Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/27.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,我目前正在努力解决我一直面临的这个问题。我正试图利用索引匹配公式获得基于多个条件的值。以下数据集仅供参考: Time Time -5 Time +5 Date Channel 1:25:00 AM 1:20:00 AM 1:30:00 AM 10/2/2016 Website 1:28:00 AM 1:23:00 AM 1:33:00 AM 10/2/2016 Website 1:35:00 AM 1:30:00 AM 1:40:00 AM 10/2/201

我目前正在努力解决我一直面临的这个问题。我正试图利用索引匹配公式获得基于多个条件的值。以下数据集仅供参考:

Time    Time -5 Time +5 Date    Channel
1:25:00 AM  1:20:00 AM  1:30:00 AM  10/2/2016   Website
1:28:00 AM  1:23:00 AM  1:33:00 AM  10/2/2016   Website
1:35:00 AM  1:30:00 AM  1:40:00 AM  10/2/2016   Website
点击后标签

Date    Time    Channel
10/2/2016   1:36:27 AM
10/13/2016  4:59:59 AM
10/15/2016  7:21:30 PM
Time    Time -5 Time +5 Date    Channel
1:25:00 AM  1:20:00 AM  1:30:00 AM  10/2/2016   Website
1:28:00 AM  1:23:00 AM  1:33:00 AM  10/2/2016   Website
1:35:00 AM  1:30:00 AM  1:40:00 AM  10/2/2016   Website
潜在客户选项卡

Time    Time -5 Time +5 Date    Channel
1:25:00 AM  1:20:00 AM  1:30:00 AM  10/2/2016   Website
1:28:00 AM  1:23:00 AM  1:33:00 AM  10/2/2016   Website
1:35:00 AM  1:30:00 AM  1:40:00 AM  10/2/2016   Website
因此,基本上基于日期(精确匹配)和时间(在Time-5和Time+5列之间的范围内)值,我想用“Prospects”数据集中的通道值填充“post click”数据集中的“Channel”列。如您所见,第一行应填写“网站”,而最后两行应填写为N/A

Time    Time -5 Time +5 Date    Channel
1:25:00 AM  1:20:00 AM  1:30:00 AM  10/2/2016   Website
1:28:00 AM  1:23:00 AM  1:33:00 AM  10/2/2016   Website
1:35:00 AM  1:30:00 AM  1:40:00 AM  10/2/2016   Website
但是,当使用我下面的公式时,所有值均为N/A

Time    Time -5 Time +5 Date    Channel
1:25:00 AM  1:20:00 AM  1:30:00 AM  10/2/2016   Website
1:28:00 AM  1:23:00 AM  1:33:00 AM  10/2/2016   Website
1:35:00 AM  1:30:00 AM  1:40:00 AM  10/2/2016   Website
=INDEX('Prospects (2)'!$F$2:$F$27054,MATCH(1,(F2='Prospects (2)'!$D$2:$D$27054)*AND('Post Click'!G2>='Prospects (2)'!$B$2:$B$27054,'Post Click'!G2<='Prospects (2)'!$C$2:$C$27054,1),0))
=索引('Prospects(2)!$F$2:$F$27054,匹配(1),(F2='Prospects(2)!$D$2:$D$27054)*和('Post Click'!G2>='Prospects(2)!$B$2:$B$27054,'Post Click'!G2尝试以下操作:

Time    Time -5 Time +5 Date    Channel
1:25:00 AM  1:20:00 AM  1:30:00 AM  10/2/2016   Website
1:28:00 AM  1:23:00 AM  1:33:00 AM  10/2/2016   Website
1:35:00 AM  1:30:00 AM  1:40:00 AM  10/2/2016   Website
=INDEX($E$7:$E$9,SUMPRODUCT(MATCH(1,($B$7:$B$9<B2)*($C$7:$C$9>B2)*($D$7:$D$9=A2),0)))
记住
TRUE=1
FALSE=0

Time    Time -5 Time +5 Date    Channel
1:25:00 AM  1:20:00 AM  1:30:00 AM  10/2/2016   Website
1:28:00 AM  1:23:00 AM  1:33:00 AM  10/2/2016   Website
1:35:00 AM  1:30:00 AM  1:40:00 AM  10/2/2016   Website
现在我们有了
MATCH(1,{0,0,1},0)
这更有意义。在这种情况下,它将返回
3
。唯一的问题是我们在将数组相乘时使用了数组公式,因此我们需要使用Ctrl+Shift+Enter输入公式,或者更方便地将数组部分包装在
SUMPRODUCT
公式中

Time    Time -5 Time +5 Date    Channel
1:25:00 AM  1:20:00 AM  1:30:00 AM  10/2/2016   Website
1:28:00 AM  1:23:00 AM  1:33:00 AM  10/2/2016   Website
1:35:00 AM  1:30:00 AM  1:40:00 AM  10/2/2016   Website

所以
SUMPRODUCT(MATCH(1,{0,0,1},0))=3
INDEX
功能正常工作。

非常感谢。它工作得很好,但我有几个问题,以便我能理解公式。您使用SUMPRODUCT的原因是什么?匹配前面的1(参考)是什么?
Time    Time -5 Time +5 Date    Channel
1:25:00 AM  1:20:00 AM  1:30:00 AM  10/2/2016   Website
1:28:00 AM  1:23:00 AM  1:33:00 AM  10/2/2016   Website
1:35:00 AM  1:30:00 AM  1:40:00 AM  10/2/2016   Website