比赛日月和年到数据源并返回login时间

这是我的数据源 数据源

这是我的Excel表格 Excel工作表

我想匹配以下内容:

将Excel中的A5添加到A列中的数据源“Staff_first_name”中

Excel表格中的A2到B列中的数据源“Year”

Excel表格中的B2到D列中的数据源“月”

Excel中的D4到E列中的数据源“日”

一旦所有这些都匹配,我想在D5中显示来自数据源的“Time In”,但只显示当天的最早或第一次(因为每天可能有多个logging)

你可以使用数组公式( Ctrl + Shift + Enter ):

=MIN(IF((Sheet1!$A$2:$A$38=Sheet2!$A5)*(Sheet1!$D$2:$D$38=Sheet2!$A$2)*(Sheet1!$B$2:$B$38=Sheet2!$B$2)*(Sheet1!$E$2:$E$38=Sheet2!D$4),Sheet1!$C$2:$C$38,"")) 

其中Sheet1是您的数据源(在此示例中为第2到第38行), Sheet2是您的摘要工作表。

它使用乘法的等式做一个基于AND的数组,然后返回MIN时间,如果他们匹配…唯一的问题是,它可能是非常慢,取决于你的数据的大小和员工数量(即数组公式进入!)

我自己工作:)这是怎么做的。

 =IFNA(INDEX(Table_Entry_Sign.accde, MATCH(1, ([@Firstname]=Table_Entry_Sign.accde[Staff_first_name]) *(Table3[Year]=Table_Entry_Sign.accde[Year])*(Table3[Month]=Table_Entry_Sign.accde[Month])* (1=Table_Entry_Sign.accde[Day]),0), 3),[@[Start Time]])