使用引用单元格作为 Google 表格查询中列的一部分

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

我正在使用以下公式:

=query('Sheet1'!A1:EA173, "select C, Y, SUM(X), SUM(Z), (3.75-Y)*SUM(X) where X>0 and not C matches '"&TEXTJOIN("|", 1, Z:Z)&"' group By C, Y label Y 'Original Price', SUM(X) 'Total lbs.', SUM(Z) 'Original Payment'")

效果很好,问题是我想将数字 3.75 更改为第四列的单元格引用,如下所示:

=query('Sheet1'!A1:EA173, "select C, Y, SUM(X), SUM(Z), ('"&I1&"'-Y)*SUM(X) where X>0 and not C matches '"&TEXTJOIN("|", 1, Z:Z)&"' group By C, Y label Y'Original Price', SUM(X) 'Total lbs.', SUM(Z) 'Original Payment'")

我得到的错误是:
无法解析函数 QUERY 参数 2 的查询字符串:无法对非数字值执行函数差异
Type(I1) 是 1,所以它是一个数字,但如果我使用相同的查询,但将 ('"&I1&"'-Y)*SUM(X) 更改为 ('"&I1&"') 中单元格的类型该列是 2 - 所以我假设这就是问题所在。 我的问题是如何让它将 I1 读取为数字,以便我可以在公式中使用它?
谢谢你

google-sheets sum match google-sheets-formula textjoin
2个回答
2
投票

尝试:

=QUERY('Sheet1'!A1:EA173, 
 "select C,Y,sum(X),sum(Z),("&I1*1&"-Y)*sum(X) 
  where X>0 
    and not C matches '"&TEXTJOIN("|", 1, Z:Z)&"' 
  group by C,Y 
  label Y                   'Original Price',
        sum(X)              'Total lbs.',
        sum(Z)              'Original Payment', 
        ("&I1*1&"-Y)*sum(X) 'some header'")

0
投票

哇!这非常有帮助,我花了一天半的时间才弄清楚列是否可以 SUM 引用数据集外部的单元格!这是巨大的!

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