从两个或多个 Excel 工作表中查找公共列(相同列名/标题但不同位置)

从两个或多个 Excel 工作表中查找公共列(相同列名/标题但不同位置)

我有来自不同客户的 Excel 工作表(csv 格式),其中所有工作表的第一行都包含列名。但是,每个工作表中的列的顺序和数量可能不同。让我举一个简单的例子:

工作表 A

cpu, memory, disk, printer
xxx, xxxxxx, xxxx, xxxxxxx

工作表 B

network, cpu, memory, mouse 
yyyyyyy, yyy, yyyyyy, yyyyy

所以我希望工作表 A* 和 B* 只保留 A 和 B 中共同的列。所以实际上是 A 和 B 相对于列名的交集,同时保留以前的值。

工作表 A*

cpu, memory
xxx, xxxxxx

工作表 B

memory, cpu
yyyyyy, yyy

关于如何在 Excel 中实现此目的,您有什么想法吗?任何帮助或指点都将不胜感激 :)

答案1

您需要使用辅助行才能使其工作。我设置了一个与您发布的示例相同的示例。在 Sheet1 中我有您的第一个列表,在 Sheet2 中我有您的第二个列表,而 Sheet3 将包含所需的结果。

对于 sheet1: 在此处输入图片描述 此公式在 Sheet2 中查找匹配项。如果匹配,则显示索引,从而创建订单。

由于 A 列是第一列,因此其公式必须不同:

在此处输入图片描述

完成后,我们会在匹配和顺序的列下方看到数字。

最后,我们只需要用数字捕获值,因此在 sheet3 中我们在顶行设置数字,然后使用以下公式查找名称:

在此处输入图片描述

其中有错误的只是意味着找到了最高的数字,所以当然要丢弃这些数字。

相关内容