我在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
我希望从表2中获得实际的休假时间,基于相同的日期,表1和表2之间的相同车辆编号;
另外,正如您所看到的,同一车辆有多个记录,表2中有相同的日期,所以我想我必须将时间(8/7/17 4:59 AM)与所有时间进行比较表2在8/7/2017和车辆10001,以获得最接近的时间,其具有我的计划时间和活动时间之间的最小abs差异。
那么有人可以告诉我在Excel中应该使用什么公式来实现我的目的吗?
非常感谢 屠夫
答案 0 :(得分:1)
我将您的数据表转换为Tables
并使用了结构化引用,因此表格所在的位置并不重要。此外,如果向任一表中添加行,公式和引用将自动更新。此外,如果您愿意,可以将表重命名为有意义的内容。
公式是数组公式,因此必须在按 ctrl + shift 并输入输入时输入。如果您正确执行此操作,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))