在 Excel(非 365 版本)中进行近似匹配的 2 因子查找?

问题描述 投票:0回答:1

我有一个考勤卡式的任务,需要分析大量数据来评估受控进入工作场所的最大/最小占用率。我获取批量原始格式的数据。有很多列,但相关的是名称、徽章扫描时间和扫描位置(东/西、进/出)。

我的任务是构建一个查找,查找员工上次扫描其徽章的时间,并确定它是否在受控空间之内或之外。

我按扫描时间升序对数据进行排序,并且可以使用串联找到选定员工和扫描位置(一般空间与受控空间)和扫描类型(输入/输出)的组合。 独立地,我可以使用以下公式根据选定的输入(我有年、月、日和一天中的时间字段)找到徽章的最后一次扫描时间:

=INDEX(BadgeTime,MATCH(TRUNC(DATE($B$3,$C$3,$D$3)+$F5,6),BadgeTime,1),1) 

我在原始数据中添加了一个辅助列,它会截断徽章扫描时间以匹配我的查找。 (该辅助列是公式中的命名范围“BadgeTime”)。

我的问题是如何将两者结合起来?到目前为止,我发现的每个版本的双因素查找都使用(需要)精确匹配,因为它们都使用某种版本的串联(或者它们创建 2 个真/假数组,将其强制为 1/0,然后进行比较)。但我需要找到特定(确切)名称和地点的最接近(大约)时间。

[我找到的所有示例都是“如何查找名称和月份来查找销售数据”。当我的版本是“如何查找姓名和销售目标数据并找到该人达到目标的最后一个月”]。

我从另一个问题的答案中找到了这个公式,并且很好奇我是否可以以某种方式合并类似的东西:

=MAX(($A$2:$A$101*100+$B$1:$CW$1<B103)*($B$2:$CW$101=TargetValue)*($A$2:$A$101*100+$B$1:$CW$1))

这是问题中的第一个答案这里

根据反馈(谢谢),这是一个示例数据表。
示例 1:在 2021 年 11 月 1 日 06:45 查找 Harmony Song 将找到位于 44501.275115 的 Controlled IN。

示例 2:在 2021 年 11 月 1 日 06:30 查找 Harmony Song 将跳过 Lobby IN 和 Lobby OUT,并在 44501.269965 找到 Controlled OUT。

全名 员工编号 徽章日期/时间 徽章时间 地点
约翰·史密斯 552510 2021-11-01 05:31:02 44501.229884 大堂进
马修·多伊 321321 2021-11-01 05:37:57 44501.234687 大堂进
马修·多伊 321321 2021-11-01 05:40:22 44501.236365 办公室
马修·多伊 321321 2021-11-01 05:41:27 44501.237118 办公室
达里尔草莓 311223 2021-11-01 05:59:26 44501.249606 大堂进
杰里·马克森 561100 2021-11-01 06:07:26 44501.255162 大堂进
唐娜·马修斯 571050 2021-11-01 06:13:41 44501.259502 大堂进
特里·麦克尼尔 255103 2021-11-01 06:13:51 44501.259618 大堂进
特伦斯·卡温顿 625825 2021-11-01 06:14:42 44501.260208 大堂进
特里·麦克尼尔 255103 2021-11-01 06:18:21 44501.262743 办公室
麦当劳叔叔 201202 2021-11-01 06:23:47 44501.266516 大堂进
麦当劳叔叔 201202 2021-11-01 06:25:10 44501.267476 办公室
杰瑞·马奎尔 561390 2021-11-01 06:26:16 44501.268240 大堂进
谢丽尔·盖茨 111234 2021-11-01 06:27:34 44501.269143 大堂进
和谐之歌 111234 2021-11-01 06:28:45 44501.269965 受控输出
和谐之歌 111555 2021-11-01 06:29:27 44501.270451 大堂出口
和谐之歌 111555 2021-11-01 06:31:03 44501.271562 大堂进
约翰·史密斯 552510 2021-11-01 06:31:07 44501.271608 受控输入
富兰克林史蒂文斯 551625 2021-11-01 06:31:40 44501.271990 大堂进
特伦斯·卡温顿 625825 2021-11-01 06:32:25 44501.272511 受控输入
麦当劳叔叔 201202 2021-11-01 06:33:55 44501.273553 受控输入
和谐之歌 111555 2021-11-01 06:36:10 44501.275115 受控输入
谢丽尔·盖茨 111234 2021-11-01 06:36:28 44501.275324 受控输入
唐娜·马修斯 571050 2021-11-01 06:36:49 44501.275567 受控输入
excel excel-formula lookup index-match
1个回答
0
投票

尝试以下解决方案:


• 单元格中使用的公式 G4

=INDEX(D:E,MATCH(2,1/((G2=A:A)*((H2+I2)>=C:C)),1),{1,2})

注意,由于它是数组公式,因此在退出编辑模式时请按 CTRL+SHIFT+ENTER


© www.soinside.com 2019 - 2024. All rights reserved.