Google Sheets中如何在QUERY结果中显示匹配数据的单元格位置
解决方案
要在QUERY结果末尾追加匹配数据的实际单元格位置,可使用以下公式实现需求:
完整公式
=ARRAYFORMULA(IFERROR( LET(data, QUERY( {'Jan 2023'!A1:M, "Jan 2023", ROW('Jan 2023'!A1:M); 'Feb 2023'!A1:M, "Feb 2023", ROW('Feb 2023'!A1:M)}, "select Col1, Col2, Col3, Col4, Col5, Col6, Col7, Col8, Col9, Col10, Col11, Col12, Col13, Col14, Col15 where Col2 = '"&A5&"'", 0), IF(data="",, HSTACK( CHOOSECOLS(data, 1,2,3,4,5,6,7,8,9,10,11,12,13), "**'"&CHOOSECOLS(data,14)&"'!A"&CHOOSECOLS(data,15)&":C"&CHOOSECOLS(data,15)&"**" ) ) ), ""))
公式说明
- 追加来源定位信息:合并两个工作表数据时,额外添加两列——工作表名称和对应行号,让每条匹配数据自带来源标记。
- 筛选目标数据:通过QUERY筛选出
Col2等于A5搜索词的记录,同时保留新增的来源信息列。 - 生成单元格位置:将工作表名和行号拼接成
'工作表名'!A行:C行的格式,用**实现加粗效果,再通过HSTACK把原结果列与位置列合并。 - 异常处理:用
IFERROR和空值判断,避免无匹配结果时显示错误提示。
内容的提问来源于stack exchange,提问作者Rick
相关产品推荐
相关产品推荐

