我有一张数据表
number LowTime HighTime
2 0:10:10 0:11:23
4 0:11:24 0:12:55
我想在这个表中找到给定时间的数值
如果我的单元格中存在 11:25(介于 11:24 和 12:55 之间),那么我想在它旁边的单元格中获取表中的数字 4。
我该怎么做?
答案1
如果你的时间段 (A) 不重叠、(B) 按升序排列且 (C) 没有间隙,那么你可以使用使用 VLOOKUP 进行近似匹配(VLOOKUP 的第 4 个参数为 TRUE 或省略)。
您还需要重新定位数字某列右侧低时刻列,因为您需要使用 VLOOKUP 搜索低时刻并返回数字。
答案2
虽然 VLOOKUP 可能是更简单的解决方案,但以下公式也可以起作用:
=INDIRECT(CONCATENATE("C",MATCH(Input,LookupRange,1)))
其中 C 是“数字”列的字母,Input 是查找值所在的单元格,LookupRange 是要与 Input 进行比较的垂直排列的单元格数组。
此外,如果您的表不是从第 1 行开始,则可能需要偏移 MATCH 的返回值。例如:
=INDIRECT(CONCATENATE("C",MATCH(Input,LookupRange,1)+X))
其中 X 是要偏移的行数。
同样值得尝试的是 MATCH 公式的最终输入,因为这会影响 Excel 是否将中间值与大于或小于的值进行匹配(接受的输入为:-1、0、1)。