如果其他两列匹配,则减去两列

在列A中,我需要从与列相同的特定值相关的ColumnB值的总和中减去与(相同行)相关的ColumnD值的总和。

 ABCDEF
 123 1 123 1 123输出(s / b -3)
 123 1 345 2 345输出(s / b -4)
 345 2 123 4 567输出(s / b 0)
 345 3 567 5
 567 5 345 7

在这个例子中,我需要123的显示-3,345的显示-4,567的显示0 。 然后我将进行sorting,并且在ColumnE中只有唯一的数字集合,输出显示在ColumnF中。 我也接受其他build议! 我一直在玩这个游戏一段时间,一直没有弄清楚。

请在F2中尝试并复制下来:

 =SUMIF(A:A,E2,B:B)-SUMIF(C:C,E2,D:D) 

试试这个:

 Sub Adjuster() Dim N As Long, i As Long N = Cells(Rows.Count, 1).End(xlUp).Row For i = 1 To N If Cells(i, 1).Value = Cells(i, 3).Value Then Cells(i, 4).Value = Cells(i, 4).Value - Cells(i, 2).Value End If Next i End Sub 

编辑#1

这种方法使用macros

macros很容易安装和使用:

  1. ALT-F11调出VBE窗口
  2. ALT-I ALT-M打开一个新的模块
  3. 粘贴东西,closuresVBE窗口

如果您保存该工作簿,该macros将与它一起保存。 如果您在2003年以后使用的是Excel版本,则必须将该文件另存为.xlsm而不是.xlsx

要删除macros:

  1. 如上所示调出VBE窗口
  2. 清除代码
  3. closuresVBE窗口

从Excel使用macros:

  1. ALT-F8
  2. selectmacros
  3. 触摸RUN

要了解有关macros的更多信息,请参阅:

http://www.mvps.org/dmcritchie/excel/getstarted.htm

http://msdn.microsoft.com/en-us/library/ee814735(v=office.14).aspx

macros必须启用这个工作!