从列表中找到每个项目的最新记录

时间:2014-03-17 05:07:09

标签: excel excel-formula

我正在监控有关项目列表的某些信息。信息定期出现,但它并不总是有效的。我有一个公式告诉我信息是否有效。 数据的结构如下。

The item List| the info on AB|the info onCD|The DATEValidity info AB|Validity info CD|

ITEM001 | DATA001 |   DATA02 |  DATE1  | Yes Valid         | Not Valid         |  
------------------------------------------------------------------------------
ITEM001 | DATA003 |   DATA04 |  DATE2  | NOT Valid         | YES Valid         | 
------------------------------------------------------------------------------ 
ITEM002 | DATA005 |   DATA06 |  DATE3  | NOT Valid         | Not Valid         | 
------------------------------------------------------------------------------ 
ITEM001 | DATA007 |   DATA08 |  DATE4  | YES Valid         | YES Valid         |  
------------------------------------------------------------------------------
ITEM002 | DATA009 |   DATA10 |  DATE5  | YES Valid         | Not Valid         |  
------------------------------------------------------------------------------
ITEM005 | DATA011 |   DATA12 |  DATE6  | NOT Valid         | YES Valid         |  
------------------------------------------------------------------------------
ITEM003 | DATA013 |   DATA14 |  DATE7  | YES Valid         | Not Valid         |  
------------------------------------------------------------------------------

我想要一个简单的方法让我安排表格,以便我可以找到每个项目的最后一个有效Info1及其日期和最后一个有效的info2及其日期。

我的公司有一项反对保存VBA文件的政策,所以除非这是绝对必要的,否则我希望能够只使用公式来做到这一点。

1 个答案:

答案 0 :(得分:1)

好的,无论是否对日期进行排序都可以尝试:

我认为您的数据如下所示: Sample Data

Cell H2中使用此公式:

=INDEX(B$1:B$7,MATCH(MAX(IF(E$1:E$7="Yes Valid",D$1:D$7)),D$1:D$7,0))

Cell I2中使用此公式:

=INDEX(D$1:D$7,MATCH(MAX(IF(E$1:E$7="Yes Valid",D$1:D$7)),D$1:D$7,0))

Cell H5中使用此公式:

=INDEX(C$1:C$7,MATCH(MAX(IF(F$1:F$7="Yes Valid",D$1:D$7)),D$1:D$7,0))

Cell I5中使用此公式:

=INDEX(D$1:D$7,MATCH(MAX(IF(F$1:F$7="Yes Valid",D$1:D$7)),D$1:D$7,0))

Ctrl + Shift + Enter 输入的所有Array Formulas以上都是{{1}}。
希望这对你有用。