通过VLOOKUP转换Google Sheets QUERY操作的每个结果行

时间:2019-10-03 15:45:08

标签: google-sheets google-sheets-formula array-formulas google-sheets-query gs-vlookup

我在Google表格中有一个QUERY的多列结果,在这里我想根据另一个命名范围内的查找表来翻译一列中的字符串。我可以通过额外的VLOOKUP间接地完成此操作,但是我想一次性完成所有操作,没有任何中介步骤。有关我的格式的示例,请参见this sheet

我进行的初始查询如下:

=QUERY(votes, "SELECT B, SUM(C) GROUP BY B LABEL B 'Option', SUM(C) 'Votes'")

然后我可以在新列中用类似的内容翻译每一行...

=VLOOKUP(A2, options, 2, 0)

...然后选择我需要的列:

={C2:C4,B2:B4}

如何将所有这些结合起来?我认为我需要使用ARRAYFORMULA来做到这一点,但这似乎并非如此:

=ARRAYFORMULA(VLOOKUP(options, QUERY(votes, "SELECT B, SUM(C) GROUP BY B LABEL B 'Option', SUM(C) 'Votes'"), 2, FALSE))

2 个答案:

答案 0 :(得分:1)

=ARRAYFORMULA({VLOOKUP(INDEX(
 QUERY(votes, "select B,sum(C) group by B LABEL sum(C)''"),,1), options, 2, 0), 
 QUERY(votes, "select   sum(C) group by B LABEL sum(C)''")})

0

答案 1 :(得分:1)

=ARRAYFORMULA(QUERY({IFERROR(VLOOKUP(Votes!B2:B, options, 2, 0)), Votes!C2:C}, 
 "select Col1,sum(Col2) where Col1 is not null group by Col1 label sum(Col2)''", 0))

0