在 google 电子表格中使用 =QUERY 公式时如何保留超链接?
How to keep the hyperlink while using =QUERY formula in google spreadsheet?
我在 Google 电子表格中写了一个 =QUERY 公式。但是,我不仅想复制单元格的值,还想复制我正在执行查询的单元格范围内的嵌入式链接。这是我写的:
=QUERY('Tab'!6:1963,"select C where (E='Major' and D >= now())")
必须有一种方法告诉查询将 URL 以及单元格的内容一起带入。
query
函数只支持certain data types:
Supported data types are string, number, boolean, date, datetime and timeofday.
它不处理可能嵌入到电子表格中的其他内容,例如图像或超链接。 (超链接被强制转换为字符串。)毕竟,查询语言不是特定于表格的东西,它有自己的数据模型,只能在一定程度上与表格交互。
如果可能,解决方案是使用 filter
而不是 query
。它可以完成 query
所做的许多事情。例如,
=QUERY(Tab!6:1963,"select C where (E='Major' and D >= now())")
可以替换为
=filter(Tab!C6:C1963, (Tab!E6:E1963="Major") * (Tab!E6:E1963 >= now()))
这将 return 链接如预期的那样。 (如果你得到它们,甚至插入带有 =image()
的图像。)乘法运算符在过滤器公式中是合乎逻辑的 和 。
我知道这是三年后的事了,但我 运行 遇到了这个问题,我的查询将转换为 FILTER 和 SORT 函数的复杂嵌套。所以我最终做了这样的事情:ARRAYFORMULA(VLOOKUP(QUERY('Tab'!6:1963,"select C where (E='Major' and D >= now())"),C:C,1,FALSE))
哪个有效。
这个问题通常与 IMPORTRANGE
相关。而 Google 的官方 answer 并没有真正帮助(即 QUERY
仅适用于字符串等)。也可以将过滤器范围作为导入范围,然后就可以了:
=FILTER(IMPORTRANGE("XXX","Data!A1:A),
IMPORTRANGE("XXX","Data!B1:B")>0)
其中第 A
列是您要导入的数据,第 B
列是过滤器
我在 Google 电子表格中写了一个 =QUERY 公式。但是,我不仅想复制单元格的值,还想复制我正在执行查询的单元格范围内的嵌入式链接。这是我写的:
=QUERY('Tab'!6:1963,"select C where (E='Major' and D >= now())")
必须有一种方法告诉查询将 URL 以及单元格的内容一起带入。
query
函数只支持certain data types:
Supported data types are string, number, boolean, date, datetime and timeofday.
它不处理可能嵌入到电子表格中的其他内容,例如图像或超链接。 (超链接被强制转换为字符串。)毕竟,查询语言不是特定于表格的东西,它有自己的数据模型,只能在一定程度上与表格交互。
如果可能,解决方案是使用 filter
而不是 query
。它可以完成 query
所做的许多事情。例如,
=QUERY(Tab!6:1963,"select C where (E='Major' and D >= now())")
可以替换为
=filter(Tab!C6:C1963, (Tab!E6:E1963="Major") * (Tab!E6:E1963 >= now()))
这将 return 链接如预期的那样。 (如果你得到它们,甚至插入带有 =image()
的图像。)乘法运算符在过滤器公式中是合乎逻辑的 和 。
我知道这是三年后的事了,但我 运行 遇到了这个问题,我的查询将转换为 FILTER 和 SORT 函数的复杂嵌套。所以我最终做了这样的事情:ARRAYFORMULA(VLOOKUP(QUERY('Tab'!6:1963,"select C where (E='Major' and D >= now())"),C:C,1,FALSE))
哪个有效。
这个问题通常与 IMPORTRANGE
相关。而 Google 的官方 answer 并没有真正帮助(即 QUERY
仅适用于字符串等)。也可以将过滤器范围作为导入范围,然后就可以了:
=FILTER(IMPORTRANGE("XXX","Data!A1:A),
IMPORTRANGE("XXX","Data!B1:B")>0)
其中第 A
列是您要导入的数据,第 B
列是过滤器