如何在 MS Excel 中使用索引、匹配等填写数据?

如何在 MS Excel 中使用索引、匹配等填写数据?

我的数据格式如下。

 1, 2, 3, 4, null, null, null

 A, B, C, D, null, null, null

 1, null, null, 4, 5, 6, 7

 A, null, null, D, 8, 9, 10

我想将第三行的数据复制到第一行中缺失的“空”单元格中,因为比较第一行和第三行时,单元格值一和四匹配。

到目前为止我有以下内容。

 =INDEX(A2:AE346, MATCH(A351&F351&G351, A2:A346&F2:F346&G2:G346, 0), 2)

这是一个电子表格使用一些样本数据,以便您可以测试您的公式。

答案1

参照合并的简单样本数据(4 行 7 列),实际上,您有两个按 B 列排序然后按 A 列排序的表,一个目标表和一个原始表。

确保按照上述方法对数据进行排序。在 A 列中插入一个新列,公式如下:

A1:=B1&E1

并将其抄录到两个(记住的)表中。

通过插入新的空行来分隔表格(这不是必需的,但您想这样做)。

按上述要求排序并插入分隔行后,目标表格将从第 1 行开始,第二个表格将从第 4 行开始。

目标表的空数据将从 F1 开始。在此处输入以下公式:

F1:=VLOOKUP($A1,$A$4:$H$5,COLUMN(F:F),0)

将公式向下复制到目标表的空数据上。

就这样,您就完成了!

如果您无法进行排序,请添加带有行编号的列,以便将来重新排序回到原始顺序。

如果不允许插入 A 列,则使用数据后的第一个新空列,并使用上面为 A1 编写的相同公式。然后使用 Index/Match 代替 VLookup(考虑到 H 中有行编号列)关键公式是:

I1:=A1&D1

对于数据(替换空值):

E1:=INDEX($E$4:$G$5,MATCH($I1,$I$4:$I$5,0),COLUMN(A:A))

将其向下并向右复制。

到这里你又完成了一次。

如果您必须对数据进行排序,请先复制并粘贴值。

如果目标表中的行在原始表中没有匹配的行,并且您希望摆脱错误消息,请使用以下命令:

E1:=IFERROR( the formula in use, "")

对于 Index/Match 解决方案:

E1:=IFERROR(INDEX($E$4:$G$5,MATCH($I1,$I$4:$I$5,0),COLUMN(A:A)),"")

祝你好运。

相关内容