根据Excel中匹配的多个条件获取最近日期

根据Excel中匹配的多个条件获取最近日期,excel,Excel,我在Excel中有两个选项卡,如下所示: 表1: Date Vehicle Number Planned Leave Time Actual Leave Time 8/7/2017 10001 8/7/17 4:59 AM 表2: Date Vehicle Number Actual Leave Time 8/7/2017 10001 8/7/17 4:29 AM 8/7/201

我在Excel中有两个选项卡,如下所示:

表1:

    Date      Vehicle Number      Planned Leave Time    Actual Leave Time
  8/7/2017        10001            8/7/17 4:59 AM   
表2:

  Date   Vehicle Number   Actual Leave Time
8/7/2017    10001          8/7/17 4:29 AM
8/7/2017    10001          8/7/17 5:59 AM
8/7/2017    10001          8/6/17 3:05 PM
8/7/2017    10003          8/6/17 2:05 PM
我想在表1和表2匹配相同日期、相同车号的基础上,从表2中得到实际休假时间

此外,如您所见,表2中有同一车辆和同一日期的多个记录,因此我认为我必须将2017年8月7日上午8:7:59的时间与表2中2017年8月7日和车辆10001的所有时间进行比较,以获得最接近的时间,即我的计划时间和活动时间之间的abs差值最小

那么,有人能告诉我,为了达到我的目的,我应该在Excel中使用什么公式吗

非常感谢
Pudge

我将您的数据表转换为表,并使用结构化引用,因此表位于何处并不重要。此外,如果向任一表中添加行,则公式和引用将自动更新。此外,如果愿意,还可以将表重命名为有意义的名称

公式是数组公式,因此必须在按住ctrl+shift键的同时按enter键来输入。如果操作正确,Excel将在公式周围放置大括号{…}:

=INDEX(Table2[Actual Leave Time], MATCH(MIN(ABS(([@Date]=Table2[Date])*([@[Vehicle Number]]=Table2[Vehicle Number])*Table2[Actual Leave Time]-[@[Planned Leave Time]])),ABS(([@Date]=Table2[Date])*([@[Vehicle Number]]=Table2[Vehicle Number])*Table2[Actual Leave Time]-[@[Planned Leave Time]]),0))

谢谢,我以前做过一些谷歌的研究,它给了我一些类似的公式,但是由于某些原因它不起作用;但是我复制了你的公式,很好用,谢谢