Excel公式:如果1列中的文本与2个不同列中的文本匹配,则减去其相邻值

时间:2018-02-17 12:31:55

标签: excel excel-formula

在Sheet1中,我在Col A中有±1200个名字的列表,而Cols B-AD是日期。 Sheet2布局与Sheet 1相同,但Sheet2上Col A中的名称列表与Col A Sheet1中的列表相同。 在Sheet3中,我有来自Sheet1和Sheet2的名称的总列表。

如果在Sheet2 Col A中的Sheet1 Col A AND 中找到Sheet3 Col A中的名称,则从Sheet2 Col B的值中减去Sheet1 Col B的值。

有人可以帮我一个公式,我可以插入我的宏吗?

2 个答案:

答案 0 :(得分:0)

我在这台机器上没有Excel,但有类似的东西:

=IFERROR(VLOOKUP(G1,Sheet1.A1:B10,2)-VLOOKUP(G1,Sheet2.A1:B10>,2),"No match")

应该工作

(上面的公式是在LibreOffice中完成的,你需要调整Excel)

答案 1 :(得分:0)

上面的公式,根据Excel调整:

=IFERROR(VLOOKUP(G1,Sheet1!A1:B10,2,FALSE)-VLOOKUP(G1,Sheet2!A1:B10,2,FALSE),"No Match!")

复制公式时自动更新列索引号:

您可以通过多种方式在公式中使用数字"自动更新"当你复制或"填充" /"拖动"它跨越列或行。

这是两个简单的方法:

  1. 使用" Helper Row"例如在这个简化的例子中:
  2. helper row example

    它被称为" Helper Row"因为它帮助"另一个公式,并且由于它不是您实际报告的一部分,您可以在设置后隐藏行,公式仍然可以正常运行...(& #34;没有人会知道!")

    1. 使用Column()功能获取相应的索引ID:
    2. column() exanple

      如果您希望在1(字母表的第5个字母)中返回Column E,并且该字母数字应随着列字母"的增加而增加",您可以使用COLUMN()-4(自 5 - 4 = 1 )。

      如果我理解正确,公式需要从Column B开始,而Column Index Number应该是2,因为B是字母表的第2个字母,我们不需要从COLUMN()函数中扣除任何内容,因此您的完整公式将为:

      =IFERROR(VLOOKUP(G1,Sheet1!A1:B10,COLUMN(),FALSE)-VLOOKUP(G1,Sheet2!A1:B10,COLUMN(),FALSE),"No Match!")