加速 Excel 索引匹配 - 第一个实例

加速 Excel 索引匹配 - 第一个实例

我使用以下公式查找电子邮件中出现的第一个姓名实例(L 列)。我有大约 40,000 行,随着新行(电子邮件)的加入,公式变得越来越慢。

您知道有什么方法可以加快公式的速度吗?

公式:=INDEX(Advisors,MATCH(TRUE,ISNUMBER(SEARCH(Advisors,L3613)),0))

Advisors= 已定义的人员名单(仍在增加)

答案1

您的问题对我来说不太清楚。如果不说明 advisors 和 l3613 中存储了什么,很难理解您到底在做什么。l3613 中有什么?是一封邮件吗?

根据我对您的问题的理解,我会做以下事情:

将以下公式放在每个顾问的姓名旁边:

=match("*"&advisorname&"*";table;0)

这将为您提供每个顾问在表中第一次出现的索引。然后您可以从该行中选择您要查找的顾问子集中的最小数量(例如使用 minifs 函数)。

这里的优点是,您可以使用匹配函数中的通配符匹配(避免嵌套 2 个搜索函数)。此外,匹配将在每个顾问第一次出现时停止,并且当不需要时不会查找到列表末尾。最终,您可以假设所有顾问都会匹配,并且新电子邮件永远不会被解析,因为没有必要。

使用示例:

在此处输入图片描述

如果我没有完全理解您的问题,请原谅我。我希望这能帮助您解决问题。

相关内容