Google Sheets多表指定列合并查询及数据着色需求求助
解决Google Sheets合并两个数据表并区分颜色的问题
修正后的QUERY公式
你的原公式只返回第一个表数据,大概率是外层QUERY的过滤条件过于严格,或者未完成IMPORTRANGE的授权。以下是修正后的公式:
=QUERY({ QUERY(IMPORTRANGE("1vJVY5gqG_1qHUtsrcDnagMDH5MhzK5TKYYG4Zj_PkZM","table1!A2:B"), "SELECT Col1, Col2 WHERE Col2 <> 0"); QUERY(IMPORTRANGE("1vJVY5gqG_1qHUtsrcDnagMDH5MhzK5TKYYG4Zj_PkZM","table2!A2:C"), "SELECT Col2, Col3 WHERE Col3 <> 0") }, "SELECT * WHERE Col1 IS NOT NULL OR Col2 IS NOT NULL")
关键修正点:
- 外层QUERY的过滤条件从
WHERE Col1 is not null改为WHERE Col1 IS NOT NULL OR Col2 IS NOT NULL,避免过滤掉第二个表中Col1(对应table2的B列)为空但Col2有值的行 - 首次使用时,点击单元格内的「允许访问」按钮,完成跨表格数据访问授权,否则IMPORTRANGE无法获取第二个表的数据
为第二个表数据设置区分颜色
使用条件格式实现自动上色:
- 选中合并结果的整个数据区域(比如从A2开始的所有行)
- 点击菜单栏「格式」→「条件格式」
- 在规则面板中选择「自定义公式」,输入以下公式:
=ROW(A2) > COUNTA(QUERY(IMPORTRANGE("1vJVY5gqG_1qHUtsrcDnagMDH5MhzK5TKYYG4Zj_PkZM","table1!A2:B"), "SELECT Col1 WHERE Col2 <> 0")) + 1 - 设置你需要的背景色或文本颜色,点击「完成」即可
这个公式会自动识别第一个表数据的行数,为之后的第二个表数据应用格式。
内容的提问来源于stack exchange,提问作者sandibaeva52
相关产品推荐
相关产品推荐

