减去Vlookup中的列

时间:2011-07-25 16:21:49

标签: excel

我有一个包含两个标签的Excel电子表格,我在DATA选项卡上有数据,在结果选项卡上有数据结果。在结果选项卡上,我需要创建一个vlookup,它将在DATA选项卡上查找数据并从B列中减去A列。这是否可以使用vlookup?

我有一个前后使用相同的clientID,但复制/粘贴的数据将会改变。

Before 
A        B      C
1021    102    125.00
1022    102    150.00
1023    105    100.00

After
A       B        C
1021   102   125.00
1022   102   
1023   105   100.00

因此,每天我都会使用AFTER编号将其粘贴到之前的编号上,然后从另一个标签中获取我的新AFTER编号。但如果粘贴的AFTER编号没有该特定帐户的数据(在本例中为1022),而我从另一个标签获得的新AFTER号码没有1022的数据,我的比较将是一个帐户,并不会通知我该帐户丢失。对不起,我知道这可能令人困惑。

2 个答案:

答案 0 :(得分:0)

我实际上并不明白为什么你需要使用VLOOKUP来减去两列......

在结果标签中,您只需输入

即可
=IF(AND(DATA!B1<>"",DATA!A1<>""),DATA!B1-DATA!A1,"")

将公式复制到整栏。

IF条件检查DATA!B1和DATA!A1是否都不为空,在这种情况下,这意味着它们都有数据并且它将减去它。如果两列中的一列是空的,它将不会执行任何操作,这就是您想要的。

如果我没有正确理解你的问题,请随意评论并澄清,我会提出其他建议。

编辑VLOOKUP解决方案:我假设两个选项卡中的客户端ID都在A列中,您必须在与DATA选项卡中的ID相同的行中从C中减去B.

在结果中,使用以下公式(将此一个放在第1行并将其复制下来):

=VLOOKUP(A1,DATA!A:C,3,FALSE)-VLOOKUP(A1,DATA!A:C,2,FALSE)

如果两个字段都为空,则返回0,如果只有B,则返回C,如果只有C,则返回-B。

如果您需要不同的行为,我可以修改此项,具体取决于哪些列为空。

希望这有帮助!

答案 1 :(得分:0)

是的,可以使用Vloopup。

=VLOOKUP(ResultsRefID,DATAarray,col1,FALSE)-VLOOKUP(ResultsRefID,DATAarray,col2,FALSE)

你可以使用那个公式,其中ResultsRefID是你试图获取数据的唯一行标识符,DATAarray是DATA工作表中的所有数据,col1 / col2是你想要减去的数据列。 / p>

使用IF语句作为数组,您可以更轻松地获得相同的结果。

=IF(ResultsRefID=DATAarrayUniqueIDrow1:DATAarrayUniqueIDrow1lastRow,col1FirstRow:col1LastRow-col2Firstrow:col2LastRow,"match not found.")

IF语句必须作为数组输入(ctrl + shift + return)