Google 表格查询=使用日期并引用动态表格

问题描述 投票:0回答:1

我使用查询功能将同一文档/工作簿中多张工作表中的数据提取到一张工作表中。源表具有相同的数据和列,但数据基于月份。

我遇到的问题是当我添加带有日期的列,然后尝试使用 SQL 选择查询来过滤数据时。这是我最新的查询,但仍然不正确:

=QUERY({
    ARRAYFORMULA(IF(LEN(July!A2:A),"2024/07/01",)),July!A2:I;
    ARRAYFORMULA(IF(LEN(Aug!A2:A),"2024/08/20",)),Aug!A2:I;
    ARRAYFORMULA(IF(LEN(Sept!A2:A),"2024/09/01",)),Sept!A2:I;
    ARRAYFORMULA(IF(LEN(Oct!A2:A),"2024/10/01",)),Oct!A2:I;
    ARRAYFORMULA(IF(LEN(Nov!A2:A),"2024/11/01",)),Nov!A2:I;
    ARRAYFORMULA(IF(LEN(Dec!A2:A),"2024/12/01",)),Dec!A2:I
},
"Select * where (Col7 is not null or Col8 is not null or Col9 is not null) or (Col1 = date '"&text(today(),"yyyy-mm-dd")&"') order by Col2 ASC, Col1 DESC")

无论我如何尝试,我都无法让 Col1 根据日期拉入正确的工作表。我认为这与字符串与日期对象有关,如果是这样,则获得正确的格式。

google-sheets google-sheets-formula
1个回答
0
投票

首先,公式使用数组来组装不同工作表的数据; QUERY 函数不会执行此操作。

其次,用于设置第一列值的 IF 是添加文本值,而不是日期。

如果您希望将日期作为第一列的值,而不是像

"2024/07/01"
这样的文本值,请使用
DATE(2024,07,01)

© www.soinside.com 2019 - 2024. All rights reserved.