如何在Excel中手动映射具有不同标题的列

如何在Excel中手动映射具有不同标题的列,excel,excel-formula,vba,Excel,Excel Formula,Vba,我想写一个类似于简单索引匹配或Vlookup匹配的函数 问题: “Kadabra”列的值应显示在“Jam”列中,“Shadabra”列应显示在“Jim”列中。考虑到列将具有一致的标题(Jim、Jam、Kadabra、Shadabra),但它们的位置可能会改变(这意味着我们不能使用列编号)。 “Abra”和“Jimmy”是索引值 我正在寻找一个excel公式解决方案。如果没有,也欢迎使用Visual Basic解决方案。实现这一点的一种方法是使用如下索引匹配公式,如果要将此公式输入单元格B8: =

我想写一个类似于简单索引匹配或Vlookup匹配的函数

问题: “Kadabra”列的值应显示在“Jam”列中,“Shadabra”列应显示在“Jim”列中。考虑到列将具有一致的标题(Jim、Jam、Kadabra、Shadabra),但它们的位置可能会改变(这意味着我们不能使用列编号)。 “Abra”和“Jimmy”是索引值


我正在寻找一个excel公式解决方案。如果没有,也欢迎使用Visual Basic解决方案。

实现这一点的一种方法是使用如下索引匹配公式,如果要将此公式输入单元格B8:

=索引($A$1:$C$4,匹配(A8,$A$1:$A$4,0),匹配(“卡达布拉”,“$1:$1,0”)

在C8中:

=索引($A$1:$C$4,匹配(A8,$A$1:$A$4,0),匹配(“Shadabra”,$1:$1,0))


然后您可以填写公式,它应该将适当的值带入Jimmy/Jim/Jam表。

首先请检查以下屏幕截图:

我在
E:F
处创建了一个匹配表,以避免在该条件下嵌套
IF
s。您可以将匹配表移动到另一张图纸,并相应地更改公式

B8
的公式如下所示。您可以将其向下拖动并向右复制:

=VLOOKUP($A8,$A$2:$C$4,MATCH(VLOOKUP(B$7,$E:$F,2,0),$A$1:$C$1,0),0)

Kadabra Jam关系是否会硬编码在公式中,或者是否有匹配表等?你会在这个匹配中使用Abra和Jimmy(1,2和3)的值吗?要么在公式中硬编码,要么我可以创建一个匹配表。(我还没想到要一张火柴桌。)是的。Abra:1将与Jimmy:1匹配,并将相对地给出其他列的值。另外,我对Excel还比较陌生。抱歉没有使用正确的俚语。非常感谢!