XW实现对excel表中单元格公式含有特定字符的查询

请使用以下核心代码实现对excel表中单元格公式含有特定字符的查询:

cells=ws.api.UsedRange.Find(search_string, LookIn=-4123, LookAt=1, SearchOrder=1,SearchDirection=1)
print(cells.address)

备注:
ws为worksheet
search_string为要寻找的字符
根据官网:

#class FindLookIn:
    # xlComments = -4144  # from enum XlFindLookIn
    # xlFormulas = -4123  # from enum XlFindLookIn
    # xlValues = -4163  # from enum XlFindLookIn

我发现LookIn设置为-4123并没有效果,与设置为-4163并没有什么变化,请教这是为什么?如果有区别请显示实际操作结果,谢谢!

将 LookIn 设置为 -4163 是将其设置为查找单元格值(而不是公式),而将其设置为 -4123 则是正确的,即查找单元格公式。
可能原因是在你的Excel文件中,待查询的单元格公式中没有与特定字符匹配的内容,导致无法找到匹配项。

来自GPT的回答:

根据Microsoft官方文档,LookIn参数指定要搜索的单元格内容的类型。在Excel中,这些类型分为三类:值(xlValues)、公式(xlFormulas)和注释(xlComments)。在VBA中,这些类型被定义为枚举类型XlFindLookIn的常量。

根据您提供的代码,将LookIn参数设置为-4123与设置为-4163相当,因为这两个值都对应于枚举类型XlFindLookIn中的常量xlFormulas。

因此,您可以根据需要将LookIn参数设置为-4123或-4163,以指定您要搜索的单元格内容的类型。如果您的公式中包含搜索字符串,它们应该可以被找到,不管您选择哪个值作为LookIn参数。

来自GPT的回答:

根据Microsoft官方文档,LookIn参数指定要搜索的单元格内容的类型。在Excel中,这些类型分为三类:值(xlValues)、公式(xlFormulas)和注释(xlComments)。在VBA中,这些类型被定义为枚举类型XlFindLookIn的常量。

根据您提供的代码,将LookIn参数设置为-4123与设置为-4163相当,因为这两个值都对应于枚举类型XlFindLookIn中的常量xlFormulas。

因此,您可以根据需要将LookIn参数设置为-4123或-4163,以指定您要搜索的单元格内容的类型。如果您的公式中包含搜索字符串,它们应该可以被找到,不管您选择哪个值作为LookIn参数。