2014-06-09 112 views
1

我有一個索引匹配公式,它通過一個列表並返回一個基於電子郵件地址的日期。我的問題是,如果有多個條目與該電子郵件地址相匹配?我如何返回最近的日期?當INDEX MATCH有多個匹配時返回最近的日期

例如表1擁有所有數據

 
    A   B   C     
email   ID   date    

表2具有特定的電子郵件地址,我在找信息上

 
A   B 
email date 

我在工作表2的B列的公式是沿着此行的列表:

index(worksheet1 C:C,match(worksheet2 A1, worksheet 1 A:A,false))

基本上是說,你找到工作表1的A列中列出了A1的電子郵件地址,在B1回報在科拉姆價值工作表1中該行的n個。

事情是我們可以有多次列出相同的電子郵件地址,所以我正在尋找返回的最新日期,而不是它找到的第一個日期。

感謝 西蒙

回答

3

您可以嘗試使用DMAX功能
=DMAX(Sheet1!A1:C5,3,A1:A2)

Worksheet1:
Worksheet1

Worksheet2:
enter image description here

Here's more on DMAX Function
如果您要查找表2中的很多電子郵件,則需要採用其他方法。

如果是這樣的話,你可以試試這個Array公式
=MAX(IF(Sheet1!$A$1:A$5=A3,Sheet1!$C$1:$C$5))
以上公式由Ctrl鍵 + 移位輸入 + 如下所示在單元格B2輸入

結果:
enter image description here

正如你所看到的,它具有相同的結果DMAX
但是你可以複製和粘貼或自動填充這個公式成功細胞B.

+0

我有數百封電子郵件中板2查找和數千片1 – user3720981

+0

@ user3720981你可以對我的編輯一起來看看。 :D順便說一句,你應該在你的問題中提到。 – L42

+0

對不起,我沒有意識到根據所涉及的數字會有差異。基於已經手動驗證的小樣本,您的編輯已經完成了技巧:)非常感謝! – user3720981