如何在谷歌电子表格中使用= QUERY公式时保留超链接?

时间:2016-07-19 16:20:19

标签: google-sheets formula

我在Google电子表格中写了一个= QUERY公式。但是,我不仅要复制单元格的值,还要复制我正在执行查询的单元格区域中的嵌入式链接。这就是我写的:

=QUERY('Tab'!6:1963,"select C where (E='Major' and D >= now())")

必须有一种方法可以告诉查询带来URL以及单元格的内容。

3 个答案:

答案 0 :(得分:9)

query功能仅支持certain data types

  

支持的数据类型包括字符串,数字,布尔值,日期,日期时间和时间。

它不会处理可能嵌入到电子表格中的其他内容,例如图像或超链接。 (超链接被强制转换为字符串。)毕竟,查询语言不是特定于表格的,它有自己的数据模型,只与片段交互。

如果可能,解决方案是使用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()))

将按预期返回链接。 (如果你得到它们,甚至用=image()插入的图像。)乘法运算符在滤波器公式中是逻辑

答案 1 :(得分:1)

我知道这是三年后的事,但是我遇到了这个问题,我的查询将转换为复杂的FILTER和SORT函数嵌套。所以我最终做了这样的事情:ARRAYFORMULA(VLOOKUP(QUERY('Tab'!6:1963,"select C where (E='Major' and D >= now())"),C:C,1,FALSE)) 哪个有用。

答案 2 :(得分:0)

这个问题通常与IMPORTRANGE有关。 Google的官方answer并没有真正的帮助(即QUERY仅适用于字符串等)。也可以将过滤器范围也设置为导入的范围,然后就可以了:

=FILTER(IMPORTRANGE("XXX","Data!A1:A),
IMPORTRANGE("XXX","Data!B1:B")>0)

其中A列是要导入的数据,B列是过滤器