首页 文章

Excel:根据工作表1中的数据创建自定义工作表2

提问于
浏览
0

我在电子表格中有两张纸 . 每个工作表都有一个具有共同值的第一列(但是它们的排序方式不同,并且它们并非在每个工作表中都存在) .

我正在尝试做的,如果可能的话,在表2中放置一个公式,其中,如果第1列是表1的匹配,则将表1中同一行中某些列的选择性数据复制到表中的某些列2 .

例:

工作表1有一个 Headers 设置和样本数据行,如下所示:

Title | Day of Week | First | Last

主管|星期三|迈克|琼斯

表2有一个 Headers 设置和样本数据行,如下所示:

Title | Surname | Weekday

主管| (空单元格)| (空单元格)

在运行我正在寻找的神秘公式后,放置在上面的2个空单元格中,表格2应该与表格1中的Supervisor键匹配,并复制我在每列中指定的数据,例如:

Title | Surname | Weekday

主管|琼斯|星期三

(在这种情况下,我告诉它将“星期几”列映射到工作日,并将“最后”列映射到“姓氏”) .

我希望这很容易/可能???救命???

2 回答

  • 0

    VBA不是必需的 . 你可以使用一个简单的VLOOKUP:

    =VLOOKUP(cell to look-up, range where you want to look up the values (first column *must* contain the keys to look-up) including all columns that you want to retrieve, the position of the column to be retrieved relative to the first column specified in argument 2, 0 (specifies you want an exact match))

    例如:

    =VLOOKUP(A1, Sheet1!$A$1:$D$150, 2, 0) ' Retrieves the 2nd column matching criteria in A1

    但请注意,您需要您的钥匙是唯一的 . 基于 Headers 的匹配信息似乎有点奇怪,因为可能会有多个人被分配到某个角色 . 例如,可能有超过1个主管 .

  • 0

    使用INDEX和MATCH(优于VLOOKUP) .

    我建议重命名 Headers ,使它们在两张纸上都匹配 .

    表1应为:

    Title | Weekday | First Name | Surname

    在表2中,单元格B2键入

    =INDEX(Sheet1!$A:$D,match($A2,Sheet1!$A:$A,0),match(B$2,Sheet1!$1:$1,0))
    

    您也可以将它拖放到C列中,它将起作用,因为您正在使用两个MATCH函数并且单元格已正确锚定 .

相关问题