query
函数不允许您使用列名;如果引用单元格范围,则可以使用字母;如果引用数组,则使用ColN
。
这非常烦人,最重要的是当您更改查询表添加,删除或交换列时。
我想使用列名,就像在标准SQL查询中一样。
答案 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)