在一个单元格中查找一个 8 位数的股票编号

Find an 8 digit stock number within a cell

我想创建一个公式,使我能够在一组数据中搜索 8 位数字。我附上了我的测试 sheet.

B 列是我需要在一组数据中查找的股票编号。

E 列是要检查的完整列表,但是,在任何一个单元格中,您可以有多个不同的 8 位股票编号。

在我的测试 sheet 中,我发现 vlookup 只搜索第一个股票编号,而不是该单元格中的所有股票编号。我曾尝试将索引匹配公式与转置拆分相结合,但是 none 使我能够正确搜索我的数据集。

=ARRAYFORMULA(VLOOKUP(B2:B,$E:$E,1,0))

然后

=INDEX($E:$E39,(MATCH(B2,TRANSPOSE(SPLIT($E:$E,";, ")))))

单元格内的数据可以用空格或“,”或“;”分隔。

您应该可以使用此 link:

复制我的测试 sheet

https://docs.google.com/spreadsheets/d/1UckPZw6tWBw0H13p79N94IqV2EFyfhYNyEhmLecr3XM/copy#gid=55962883

希望能帮到你。

尝试:

=FILTER(E:E, REGEXMATCH(E:E&"", TEXTJOIN("|", 1, B2:B)))


更新:

要获得 true/false 使用:

=INDEX(REGEXMATCH(E2:E&"", TEXTJOIN("|", 1, B2:B)))

或者如果你想 return 匹配或 N/A 使用:

=INDEX(IF(REGEXMATCH(E2:E&"", TEXTJOIN("|", 1, B2:B)), E2:E, ISNA()))