带有Vlookup匹配数据的Google表格Arrayformula

时间:2020-09-16 10:23:50

标签: arrays google-sheets vlookup matching

希望大家都做得很好。

我一直在使用ArrayFormula和Vlookup来匹配来自不同工作表的数据,在sheet2列标题为“ Comment”的列中提供了公式。

问题是公式无法匹配所有列,甚至没有粘贴Sheet1列“ F”中可用的结果。

有人可以看看该问题以解决该错误/问题。

=ArrayFormula({"Comments";IF(B2:B="",,IFERROR(VLOOKUP(B2:B&" "&C2:C&" "&D2:D&" "&E2:E,SPLIT(TRANSPOSE(TRIM(QUERY(TRANSPOSE(IMPORTRANGE("https://docs.google.com/spreadsheets/d/11R59FJN9oRkoh3TRNjf_lW_thkhRRxeslDjKRCP3Fhg/edit#gid=0","A:E")&IF(SEQUENCE(1,5)=4,"|",)),,5))),"| ",0),2,0),"*** NOT FOUND ***"))})

下面是工作表链接

https://docs.google.com/spreadsheets/d/11R59FJN9oRkoh3TRNjf_lW_thkhRRxeslDjKRCP3Fhg/edit?usp=sharing

https://docs.google.com/spreadsheets/d/1yYEc5l5oZNIyMwCwfcYRuRxk_VBB70BUzgefDq6Kerw/edit?usp=sharing

如果有简单的方法可以通过单个公式完成此操作,请分享。

2 个答案:

答案 0 :(得分:1)

我想我已经找到你的问题了。

您的公式未比较等效的“字段”。
对于来自importrange函数的数据,您不要在第一列中包括MCM字段。因此,当您将值与VLOOKUP进行比较时,它们将永远不匹配。

您可以通过在VLOOKUP公式中删除E列的串联来对此进行测试-对此进行更改”。

VLOOKUP(A2:A&" "&B2:B&" "&C2:C&" "&D2:D&" "&E2:E

对此:

VLOOKUP(A2:A&" "&B2:B&" "&C2:C&" "&D2:D

然后大多数记录都匹配。

让我知道我是否在这里错过了什么。

更新:我删除了显示数据对齐方式的图像,但是由于数据可能不是通用数据,所以我将其删除。

UPDATE#2: 我在示例Sheet2中添加了一个新标签MCM-GK,并且在M1中放置了一个公式,以替换F1中的公式。但是,不清楚在进行VLOOKUP时需要从数据中得到什么结果。我假设您要返回第六列,其中包含状态注释。请让我知道这是否是您想要的。如果不是,请清楚说明您要从Sheet1的IMPORTRANGE返回哪些数据。

请注意,隐藏的列G至L显示了中间步骤,仅用于说明。最终公式不需要它们,可以根据需要将其删除。

答案 1 :(得分:0)

浏览完演示表后,我想出了解决方法。我添加了一个查询以获取您的查找数据范围并将其内置到列中。下面的示例对我有用。

=ArrayFormula(If(A2:A="",,ifError(VLOOKUP(A2:A&" "&B2:B&" "&C2:C&" "&D2:D,Query(SPLIT(TRANSPOSE(TRIM(QUERY(TRANSPOSE(IMPORTRANGE("https://docs.google.com/spreadsheets/d/11R59FJN9oRkoh3TRNjf_lW_thkhRRxeslDjKRCP3Fhg/edit#gid=0","MCM!A:F")&IF(SEQUENCE(1,5)=4,"|",)),,5))),"| ",0),"Select Col1,Col2"),2,false),"*** NOT FOUND ***")))

祝你好运!