首页 > 解决方案 > 查询两个选项卡的子集仅返回 #N/A

问题描述

我正在尝试结合两个数据选项卡来计划日常工作。一个选项卡用于重复任务,一个选项卡用于临时任务。选项卡上的数据大多相似,除了 Sheet1 Col4 是星期几,而 Sheet2 Col4 是日期

我想要的是选择一周中的当前日期并让查询返回当天的所有重复任务,以及该特定日期的任何临时任务

我可以单独返回两组数据但是我不能让查询一起返回两个子集

Sheet1 Data
ID,TASK NAME,LOCATION,TASK DAY
REC1,Task 1,Office,Monday
REC2,Task 2,Office,Tuesday
REC3,Task 3,Field,Wednesday
REC4,Task 4,Office,Thursday
REC5,Task 5,Field,Friday
REC6,Task 6,Field,Monday
REC7,Task 7,Field,Tuesday

Sheet2 Data
ID,TASK NAME,LOCATION,TASK DATE
ADH1,AdHoc 1,Office,25/Jun/2019
ADH2,AdHoc 2,Office,26/Jun/2019
ADH3,AdHoc 3,Field,27/Jun/2019
ADH4,AdHoc 4,Office,28/Jun/2019
ADH5,AdHoc 5,Field,29/Jun/2019
ADH6,AdHoc 6,Field,30/Jun/2019
ADH7,AdHoc 7,Field,1/Jul/2019

这会根据单元格 J1 中的星期几从工作表 1 中提取数据

=query({Sheet1!A:D}, "select Col1,Col2,Col3,Col4 where Col4 = """&J1&""" ",0)

这会根据以下内容从工作表 2 中提取数据today()

=query({Sheet2!A:D}, "select Col1,Col2,Col3,Col4 where Col4 = date '" & text(today(),"yyyy-mm-dd") & "' ",0)

认为这会起作用,但只会返回一个空集

=query({Sheet2!A:D;Sheet1!A:D}, "select Col1,Col2,Col3,Col4 where Col4 = date '" & text(today(),"yyyy-mm-dd") & "' OR Col4="""&J1&""" and Col1<>'' ",0)

当 J1 =Tuesday和 date =25/Jun/2019我应该得到

ID,TASK NAME,LOCATION,TASK DAY
ADH1,AdHoc 1,Office,25/Jun/2019
REC2,Task 2,Office,Tuesday
REC7,Task 7,Field,Tuesday

但相反,只是得到#N/A

标签: google-sheetsgoogle-sheets-query

解决方案


你几乎拥有它。
而不是将数组放在查询中;将查询放入数组中。


={QUERY(Sheet1!A:D, "SELECT A, B, C, D WHERE D = """&J1&""" ");
  QUERY(Sheet2!A2:D, "SELECT A, B, C, D WHERE D = date '" & text(today(),"yyyy-mm-dd") & "'")}

信用 -在一张纸上堆叠多个查询输出


推荐阅读