执行以下查询= QUERY(A2:C, "select B, avg(C) group by B pivot A")将返回源数据的正确摘要.但是,结果中有空行和空白列(参见示例).如何摆脱它们?我可以处理空白行,offset 1但是列怎么样?
此外,使用A2:C11指定数据,没有空行或列.但是当数据在源范围的末尾添加时,它不会包含在查询结果中(显然).如何防止空行和列?
我正在尝试在Google表格中创建一个简单的查询,该查询可让我标记正在输出的两列,并根据另一列对结果进行排序。但是,一旦添加Order By或第二个Label命令,它就会抛出错误。这是我的公式。谢谢你的帮助。
=query(A1:H,"SELECT H, SUM(G) WHERE H > '' AND G > 0 GROUP BY H ORDER BY A LABEL SUM(G) 'Sub Total', LABEL H 'Group Description'",0)
Run Code Online (Sandbox Code Playgroud) 在 google 表格中,当 C 列中的单元格包含不同表格上范围内的任何值时,我想返回一行。
下面的查询不起作用。我缺少什么?
=QUERY(
'Form Responses 1'!$1:$1000,
" select A:G where C contains 'Sheet2'!$A1:$A26"
)
Run Code Online (Sandbox Code Playgroud) 我希望转置、拆分并保留正确的相应类别/参考号。
| A | B | | A | B |
|001|Email1,Email2,Email3| |001|Email1|
|002|Email4,Email5,Email6| |001|Email2|
| | | |001|Email3|
| | | |002|Email4|
| | | |002|Email5|
| | | |002|Email6|
Run Code Online (Sandbox Code Playgroud)
这是另一篇文章,与我想要完成的任务类似。唯一的区别是在这篇文章中,OP 要求公式将数据重复 X 次。这是使用的公式:
=ARRAYFORMULA({TRANSPOSE(SPLIT(CONCATENATE(REPT(B2:B&",", A2:A^2)), ",")),
TRANSPOSE(SPLIT(CONCATENATE(REPT(C2:C&",", A2:A)), ","))})
Run Code Online (Sandbox Code Playgroud)
我尝试通过删除“^2”、“A2:A”替换为 COUNTIF(以确定每行中的电子邮件数量)来修改此公式,并继续打破该公式。
我究竟做错了什么?
这是我的单子。
transpose split concatenation google-sheets google-query-language
我尝试使用 vlookup() 或类似的东西从其他表中查询。我想计算它会产生多少个数组。
如何从 query() 或 filter() 或 vlookup() 找到输出或结果数组的长度?类似于 len() 但用于计数数组。
谢谢
这有效:
curl 'https://docs.google.com/spreadsheets/d/e/2PACX-1vS3iBtVf4i_won5zAN9NGPqhcd6CcTb-4QHxpisSjCmlgV95B6mFmZvtMaC9GPvD7m8kD-6XLkVAhfc/pub?gid=911257845&single=true&output=csv'
Run Code Online (Sandbox Code Playgroud)
但是我只想选取 count > 300 的行。
编码之前的查询是
select * where F > 300
Run Code Online (Sandbox Code Playgroud)
编码后
select%20*%20where%20F%3E300
Run Code Online (Sandbox Code Playgroud)
所以网址就变成了
https://docs.google.com/spreadsheets/d/e/2PACX-1vS3iBtVf4i_won5zAN9NGPqhcd6CcTb-4QHxpisSjCmlgV95B6mFmZvtMaC9GPvD7m8kD-6XLkVAhfc/pub?gid=911257845&output=csv&tq=select%20*%20where%20F%3E300
Run Code Online (Sandbox Code Playgroud)
上面的行可以检索文件,但它返回整个文件,并且不进行过滤。
请注意,已发布的网页表格的形式为
https://docs.google.com/spreadsheets/d/e/KEY/pub?gid=GID
这有效。添加 &output=csv 到它(& 之前没有空格)可以工作,并且它会作为 csv 文件下载。这将在 Excel 中打开并显示表中的数据。
我试过这个:
https://docs.google.com/spreadsheets/d/e/2PACX-1vS3iBtVf4i_won5zAN9NGPqhcd6CcTb-4QHxpisSjCmlgV95B6mFmZvtMaC9GPvD7m8kD-6XLkVAhfc/pub?gid=911257845&output=csv&tq=select%20 *%20where% 20F%3E%20300
和
并出现错误——资源不可用。
上面的页面应该对想要尝试的人公开。
这可能是发布工作表和向拥有链接的任何人共享整个电子表格之间的问题。
我创建了一个新页面,它使用 importrange() 从主工作表中获取该页面,并且该页面是公共的。
https://docs.google.com/spreadsheets/d/1-lqLuYJyHAKix-T8NR8wV8ZUUbVOJrZTysccid2-ycs/edit?usp=sharing
仅当 F 列中的单元格 = 是时,我想将工作表 1 中 A:D 列中的单元格中的数据复制并粘贴到工作表 2 上
我试图编写公式,但我不断收到解析错误。我尝试使用的公式是
=query("Sheet1"!A:D,"Select A where F="Yes"")
Run Code Online (Sandbox Code Playgroud) worksheet-function google-sheets google-query-language google-sheets-formula
当我执行此功能时,它会起作用:
=Query(CRM!1:1085,"Select B where D contains 'FirstName LastName' ",4)
Run Code Online (Sandbox Code Playgroud)
当我执行此操作时,其中 B31 是文本“FirstName LastName”在工作表中的位置,输出只是众多结果之一:
=Query(CRM!1:1085,"Select B where D contains '&B31&' ",4)
Run Code Online (Sandbox Code Playgroud)
我希望能够使用单元格,而不是在公式中写入引用的文本。这是因为我需要快速复制许多不同值的公式。还因为它需要在源发生变化时实现自动化。
我在各种情况下使用 G 表,这是一个非常频繁的用例。在这种情况下,假设电子表格如下所示: https://docs.google.com/spreadsheets/d/1PAg2Gr2T1gUmqlbAJaJjMQ37yO_YI5sYz9WMY3Q1lEg/edit ?usp=sharing
B 列中的大陆,C 列中的国家。然后,在另一张纸上,列出与给定国家/地区对应的值列表。所以我想要的是在 C 列中从大陆列表中进行选择,但在 D 列中从该大陆内的国家/地区列表中进行选择。
B 上校 | C 上校 | D 上校 |
巴黎 | 欧洲 | 法国|
我已经审查了有关如何使用脚本执行此操作的问题,但似乎无法复制它。我还想知道是否有一种快速而肮脏的方法可以使用公式或添加额外的过滤表来完成此操作。
javascript google-sheets google-apps-script google-query-language google-sheets-formula
我有这个简单的谷歌表:
在C2中,我使用简单的查询:
=query({A2:A15},"select Col1")
Run Code Online (Sandbox Code Playgroud)
但所有非数字值都被跳过。为什么 ?