【问题标题】:Google Sheets VLOOKUP of multiple columns across multiple sheets跨多个工作表的多个列的 Google 表格 VLOOKUP
【发布时间】:2019-04-26 20:25:43
【问题描述】:

我不是 100% 确定 VLOOKUP 是用于此的正确公式,但我尝试的是以下内容:

=ArrayFormula(IF(len(B2:B),vlookup(B2:B,{‘New1′!B3:C;’New2′!B3:C;’New3’!B3:C},2,FALSE),””))

我想修改上面的公式来做以下事情。我有一个带有多个标签的 Google 表格。有一个选项卡将所有数据存储为元数据以填充其他 6 个选项卡。我将元数据拆分为 6 个选项卡,但希望避免重复选项卡中的数据。所以我想创建一个列,如果数据已经放置,它将显示数据当前放置的位置。这是一个例子:

Master Sheet 有这些数据:

Name1, Phone1, Address1, E-mail1 
Name2, Phone2, Address2, E-mail2
Name3, Phone3, Address3, E-mail3 
Name4, Phone4, Address4, E-mail4

将有 4 个选项卡,其中我有相同的列(姓名、电话、地址、电子邮件)。我会将主表中的数据拆分为这 4 个选项卡。如果我在选项卡 3 中放置“名称 2、电话 2、地址 2、电子邮件 2”:我希望公式查看 VLOOKUP 中的整个数据块,而不仅仅是名称,如果是,则显示“选项卡 3 “ 在该领域。存在具有相同名称或地址的元数据,因此我希望 VLOOKUP 查看多个选项卡(选项卡 1、选项卡 2、选项卡 3、选项卡 4)并与多个列进行比较以匹配(姓名、电话、地址、电子邮件都与主表中的相同),如果找到匹配...它将显示其所在选项卡的某种指示(“选项卡 3”)。希望这是有道理的。

【问题讨论】:

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


    【解决方案1】:
    =ARRAYFORMULA(IFERROR(SUBSTITUTE(SPLIT(TRIM(
        TRANSPOSE(QUERY(TRANSPOSE(SUBSTITUTE(IF(LEN(A2:A), {
     IF(TRANSPOSE(QUERY(TRANSPOSE(A2:D),,999^99))=IFERROR(VLOOKUP(
        TRANSPOSE(QUERY(TRANSPOSE(A2:D),,999^99)),
        TRANSPOSE(QUERY(TRANSPOSE(Sheet1!A2:D),,999^99)),1,0)), "Sheet1", ),
     IF(TRANSPOSE(QUERY(TRANSPOSE(A2:D),,999^99))=IFERROR(VLOOKUP(
        TRANSPOSE(QUERY(TRANSPOSE(A2:D),,999^99)),
        TRANSPOSE(QUERY(TRANSPOSE(Sheet2!A2:D),,999^99)),1,0)), "Sheet2", ),
     IF(TRANSPOSE(QUERY(TRANSPOSE(A2:D),,999^99))=IFERROR(VLOOKUP(
        TRANSPOSE(QUERY(TRANSPOSE(A2:D),,999^99)),
        TRANSPOSE(QUERY(TRANSPOSE(Sheet3!A2:D),,999^99)),1,0)), "Sheet3", ),
     IF(TRANSPOSE(QUERY(TRANSPOSE(A2:D),,999^99))=IFERROR(VLOOKUP(
        TRANSPOSE(QUERY(TRANSPOSE(A2:D),,999^99)),
        TRANSPOSE(QUERY(TRANSPOSE(Sheet4!A2:D),,999^99)),1,0)), "Sheet4", )}, ),
     " ", "♦")),,999^99))), " "), "♦", " ")))
    

    【讨论】:

    • 这是我试图尝试的,但它给了我奇怪的结果。基本上我想搜索我的所有选项卡(选项卡 1-4)并查找所有列的匹配项。因此,如果 4 个选项卡中的任何一个选项卡中的 A-D 列与主表中的 A-D 列匹配,则使用找到它的选项卡填写该字段。因此,如果它在选项卡 2 和选项卡 3 中匹配,它应该转置选项卡 2 和选项卡3 在接下来的 2 个字段中。
    • 我制作了一个样本表,其中包含数据示例和我正在寻找的内容:docs.google.com/spreadsheets/d/…
    • 最后一个选项卡上的黄色列是我正在寻找的。一个公式,它检查它之前的 4 个选项卡中的每一个,以找到整个 4 列的完全匹配项。没有主键来检查我的数据,所以我需要它来检查所有 4 列。如果所有 4 列与 4 个选项卡中的任何一个中的 4 列匹配,它将显示该选项卡的名称作为结果。如果有多个结果(4 列与多个选项卡中的 4 列匹配),它将为我转置这些结果。
    • 很难从我手中的任何东西中分辨出来。但数组字面量错误意味着矩阵在 VR 星座中的两侧(所有)都不相等。错误示例:={"a","b";"c"} 修复:={"a","b";"c","d"}
    • 你成功了。我只是健忘。我在公式前面有一个数组文字,用于在结果上方放置一个列标题。你提醒我它就在那里。问题解决了,谢谢大佬!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-09-09
    • 1970-01-01
    • 2013-06-21
    • 2021-02-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多