Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 将日期、月份和年份与数据源匹配,并及时返回登录_Excel_Excel Formula - Fatal编程技术网

Excel 将日期、月份和年份与数据源匹配,并及时返回登录

Excel 将日期、月份和年份与数据源匹配,并及时返回登录,excel,excel-formula,Excel,Excel Formula,这是我的数据源 这是我的excel表格 我想匹配以下内容: 将excel工作表中的A5添加到A列中的数据源“员工姓名” excel工作表中的A2到B列中的数据源“年” excel工作表中的B2到D列中的数据源“月” excel工作表上的D4到E列中的数据源“天” 所有这些匹配后,我希望显示D5内数据源的“时间输入”,但只显示当天最早或第一次(因为每天可能有多条记录)您可以使用数组公式(Ctrl+Shift+Enter): 其中,Sheet1是您的数据源(本例中的第2行至第38行),而Shee

这是我的数据源

这是我的excel表格

我想匹配以下内容:

将excel工作表中的A5添加到A列中的数据源“员工姓名”

excel工作表中的A2到B列中的数据源“年”

excel工作表中的B2到D列中的数据源“月”

excel工作表上的D4到E列中的数据源“天”


所有这些匹配后,我希望显示D5内数据源的“时间输入”,但只显示当天最早或第一次(因为每天可能有多条记录)

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

其中,
Sheet1
是您的数据源(本例中的第2行至第38行),而
Sheet2
是您的摘要工作表

它使用相乘的等式执行基于数组的
,然后返回
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]])

您能够将其输入SQL吗?因为您标记了SQLHi,所以询问抱歉,并不是要标记SQL。否数据源是从ms access数据库读取的。pnuts,数据透视表不是选项(我们需要我指定的格式)
=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]])