我有如下的excel表格数据
CustomerNo LoginDate
101 25/05/2012
101 10/05/2012
101 20/05/2012
101 10/04/2012
102 21/05/2012
102 12/04/2012
103 20/05/2012
104 08/04/2012
我想获得与客户编号和结果匹配的上次登录日期,如下所示。
101 25/05/2012
102 21/05/2012
103 20/05/2012
104 08/04/2012
您可以使用 DMAX 功能来执行此操作。
首先,我将 CustomerNo 放在 A1 中,将 08/04/2012 放在 B9 中。然后我将该范围命名为“theTable”。
其次,我添加 A11 和 B11 我的条件,“CustomerNo”和“LoginDate”。
然后在A12,我放101.
终于准备好我的DMAX功能了
在B12,我放
=DMAX(theTable,"LoginDate", A11:A12)
Excel 将于 25/05/2012 在 B12.
你可以试试数据透视表。这有一个很好的能力,可以一次获得所有客户数量的最大值,并且可以在任何数据发生变化时快速更新。
CustomerNo
到Row Labels
LoginDate
到Values
Value Field Settings
(例如,通过右键单击数据透视表中的任何值)更改为 Summarize by
Max
有两种方式:
Ctrl + Shift + Enter
):=MAX(IF($A$2:$A$9=C2,$B$2:$B$9))
=MAX(INDEX(($A$2:$A$9=C2)*($B$2:$B$9),,1))
我个人更喜欢第二种方法,因为数组函数会降低大数据的 PC 性能。无论如何,希望这会有所帮助。