我是一名糖尿病患者,我可以将连续血糖监测仪的血糖导出到 Excel 表中,这台机器每 5 分钟检查一次我的血糖。医生给我的是当天的快照。通常是早上 8 点、10 点、中午 12 点、下午 2 点、下午 5:30、7:30,然后是睡觉时间和凌晨 3 点。我想要做的是根据日期,然后是最近的时间。我一直在使用 Match 和 Min am 玩,差点用了类似这样的东西,
INDEX(C2:C11,MATCH(MIN(ABS(B2:B8-"03:00:00")),ABS(B2:B8-"03:00:00"),0))
如果我只查看一个日期,我就能得到数字,我遇到的问题是尝试先查看日期,然后找到最接近 3:00:00 的时间,并在那个时间给我那个数字。它基本上是这样的。所以在表格上,我发送给我的医生,我想输入日期并提取最接近那个时间的数字。
A1 Date (02/25/2018) then in B1 will read this and pull 3am then C1 8am D1 10am etc
A2 Date (02/25/2018) then in B2 will read this and pull 3am then C2 8am D2 10am etc
导出结果如下所示。但包含 5000 行。
Date Time Numbers
02/25/2018 3:44:54 96
02/25/2018 3:49:54 92
02/25/2018 23:54:54 88
02/25/2018 23:59:54 86
02/26/2018 0:04:54 83
02/26/2018 0:09:54 80
02/26/2018 0:14:54 78
02/26/2018 0:19:54 76
02/26/2018 0:24:54 75
02/27/2018 2:59:52 263
02/27/2018 3:04:52 265
答案1
可以尝试查找并使用 range_lookup 选项的近似匹配,但这确实有其局限性,如下所述。
让您的日期沿着 A 列排列,如下图所示。
让你的时间贯穿第 1 行,如下图所示。
将公式
=VLOOKUP(ABS(DATE(YEAR($A2),MONTH($A2),DAY($A2))+TIME(HOUR(B$1),MINUTE(B$1),SECOND(B$1))),Report!$A:$B,2,-1)
粘贴到 B2 中,然后将其拖到其他列。
请注意:
- 这并不完全准确,例如,它将返回
01:58:00
更接近03:00:00
而不是03:16:00
最接近的值,不超过03:00:00
,如下图所示。