如何在Google Sheet Query中明确使用列名

时间:2017-08-03 09:52:59

标签: google-sheets

query函数不允许您使用列名;如果引用单元格范围,则可以使用字母;如果引用数组,则使用ColN。 这非常烦人,最重要的是当您更改查询表添加,删除或交换列时。

我想使用列名,就像在标准SQL查询中一样。

1 个答案:

答案 0 :(得分:0)

一个解决方案可能会重复出现在脚本创建的某个自定义函数中,但是当你有一个不那么小的表时,由于计算时间过长,你肯定会遇到一些错误。

我发现最有效的解决方案(仅使用本机功能)如下。

假设您正在处理工作表范围,您的列名称在第1行,并且您想要引用“salary”列;你可以通过

获得专栏信

substitute(address(1,match("salary",A1:1,0),4),"1","")

相反,如果您要查询数组,则更简单;你需要的字符串是

"Col"&match("salary",A1:1,0)

最终查询可能不那么优雅,但效率得到保证:

query( employeessheet!A:E, "select "&substitute(address(1,match("salary",employeessheet!A1:1,0),4),"1","")&" where ...", 1)