Excel VBA,按一列分组,比较另一列,写第三列

时间:2018-12-14 18:58:16

标签: excel vba excel-vba

在可视化方面存在一些问题。首先,这是我的excel示例的屏幕:

enter image description here

我正在尝试找出方法:

  1. 将所有SN分组在一起,以便我可以
  2. 比较每一行的DOA和DOB列中的日期。如果它们相等,那么
  3. 在“结果”列中写“匹配”一词。

编辑:应该仅对每个SN的最新日期进行日期比较。

在代码执行后,我突出显示了应在其列中包含“匹配”的行。

这可能与VBA宏有关吗?

1 个答案:

答案 0 :(得分:4)

如果不需要VBA:

如果您拥有Office 365,请使用:

=IF(AND(C2=MAXIFS(C:C,A:A,A2),C2=B2),"MATCH","")

如果您不使用:

=IF(AND(C2=AGGREGATE(14,6,$C$2:$C$11/($A$2:$A$11=A2),1),C2=B2),"MATCH","")

enter image description here


如果您的Excel确实很旧,则需要使用:

=IF(AND(C2=MAX(IF($A$2:$A$11=A2,$C$2:$C$11)),C2=B2),"MATCH","")

这是一个数组公式,退出编辑模式时必须使用Ctrl-Shift-Enter而不是Enter进行确认。