文档说查询函数的 select 参数可以是带引号的字符串,也可以是包含该字符串的单元格引用。 但是,当在每个场景中使用相同的选择字符串时,我会得到不同的结果。
我想要实现的结果是有一个地方来更新 select 语句。 我在一个大型工作簿的很多地方使用这个查询(以及几个类似的查询),并且希望在数据表的几何形状发生变化时有一个地方可以对查询进行更改。
参考gsheet: https://docs.google.com/spreadsheets/d/1vwZYlc4vPwP7R7m34oWQEPREeoxWWxctx_Y5JeI4zQU/edit?usp=sharing
数据:
A | B | C |
---|---|---|
约翰 | 椅子1 | 椅子3 |
比尔 | 椅子2 | 椅子4 |
苏 | 椅子5 | 椅子6 |
查询函数使用偏移量来确定 where 子句中其上方单元格的值,以便查找人名:
A |
---|
椅子2 |
查询 |
首先,我在 gsheet 的单元格 E8 中创建了以下 gsheet 查询函数,该函数按预期工作并返回 Bill 值。
=query(A6:C8,"选择 A,其中 B='"&OFFSET(INDIRECT(ADDRESS(ROW(), COLUMN())),-1,0)&"' 或 C='"&OFFSET(INDIRECT(ADDRESS) (ROW(), COLUMN())),-1,0)&"' 限制 1",0)
接下来,我将查询的选择部分放入单元格 A14 中,然后在单元格 E12 中显示的查询公式中引用它,结果是 N/A(没有返回值):
=查询(A6:C8,A14,0)
A14 中的值:选择 A,其中 B='"&OFFSET(INDIRECT(ADDRESS(ROW(), COLUMN())),-1,0)&"' 或 C='"&OFFSET(INDIRECT(ADDRESS(ROW()) , COLUMN())),-1,0)&"' 极限 1
我预计这两种情况下的结果是相同的。