【发布时间】:2020-09-09 22:36:29
【问题描述】:
我有以下(从原始简化)公式,它从另一张纸(原始公式中的多张纸)中提取数据并根据另一列的月()值计算一列的总和:
=QUERY({
IFERROR(IMPORTRANGE('C1'!$B$5, "PLACEMENTS!A4:L1000"), {"",TO_DATE(0),"","","","","","","","","",""})},
"SELECT SUM(Col8) WHERE Col2 IS NOT NULL AND month(Col2)+1="& MONTH($A3) &" AND Col1="""&B$2&""""& IF(NOT($C$1="ALL"), "AND Col6="""&$C$1&"""" ,)& " label SUM(Col8) ''",0)
我不断收到 #VALUE! 错误:
无法解析函数 QUERY 参数 2 的查询字符串:不能 在不是 Date 或 a 的列上执行功能 month 日期时间列
如果我将 IFERROR 包装器删除到 IMPORTRANGE 语句中,那么错误就会消失,并且如您所见,在 IMPORTRANGE 语句出现错误的情况下,一个带有 Col2 设置为插入TO_DATE(0) 的日期。
这个没有IFERROR 的公式可以正常工作,并且拉入行并提供SUM 值:
=QUERY({IMPORTRANGE('C1'!$B$5, "PLACEMENTS!A4:L1000")},"SELECT SUM(Col8) WHERE Col2 IS NOT NULL AND month(Col2)+1="& MONTH($A3) &" AND Col1="""&B$2&""""& IF(NOT($C$1="ALL"), "AND Col6="""&$C$1&"""" ,)& " label SUM(Col8) ''",0)
这里是一个示例表的链接,该公式使用相同的数据结构从中导入:Sample Sheet Data
如果Query 在没有IFERROR 包装器的情况下工作,为什么它会在IFERROR 包装器到位的情况下产生关于Col2 的错误,在这种情况下不应触发?这个完全相同的公式适用于另一个用户的电子表格。这是谷歌表格/查询错误还是我在这里做错了什么?谢谢
【问题讨论】:
-
您能否在您的问题中提供有效的和无效的完整公式?还提供一个示例电子表格有助于排除故障。
-
@ziganotschka 我已经添加了有效的公式,但不幸的是我无法提供一个有效的示例电子表格,因为它包含财务数据。谢谢
-
只要格式相同,您就可以提供带有假值的虚拟电子表格。
-
@ziganotschka 我现在用示例数据的链接更新了问题。
标签: mysql sql google-sheets