在列表中搜索子字符串并给出所有匹配结果以逗号分隔
Search substring in a list and give all the matching results comma separated
我有一个项目列表
My uncle eats a banana
My uncle eats a pear
My father eats an apple
My father eats a pear
如果我输入子字符串“uncle”,我想看到“My uncle eats a banana,My uncle eats a pear”
如果输入“梨”我想看“我叔叔吃梨,我爸爸吃梨”
棘手的是它不能是宏
有什么想法可以让它发挥作用吗?
我找到了
https://www.xelplus.com/return-multiple-match-values-in-excel/
这个公式:
=TEXTJOIN(",",TRUE,IF(A5:A14=G4,B5:B14,""))
仅适用于完全匹配,不适用于子字符串
您可以使用:
C1
中的公式:
=TEXTJOIN(", ",,FILTER(A:A,ISNUMBER(FIND(" "&B1&" "," "&A:A&" "))))
或者:
=TEXTJOIN(", ",,IF(ISNUMBER(FIND(" "&B1&" "," "&A:A&" ")),A:A,""))
第二个选项是在 Excel-2019 年输入 CSE。
因为我正在使用 Excel 2016(没有 TEXTJOIN 函数),所以我尝试不使用 VBA 的方法是这样的 excel 文件:
https://www.dropbox.com/s/7c09ykr4redog4k/Concat%20without%20VBA.xlsx?dl=1
希望能帮到你
我有一个项目列表
My uncle eats a banana
My uncle eats a pear
My father eats an apple
My father eats a pear
如果我输入子字符串“uncle”,我想看到“My uncle eats a banana,My uncle eats a pear” 如果输入“梨”我想看“我叔叔吃梨,我爸爸吃梨”
棘手的是它不能是宏
有什么想法可以让它发挥作用吗?
我找到了 https://www.xelplus.com/return-multiple-match-values-in-excel/
这个公式: =TEXTJOIN(",",TRUE,IF(A5:A14=G4,B5:B14,""))
仅适用于完全匹配,不适用于子字符串
您可以使用:
C1
中的公式:
=TEXTJOIN(", ",,FILTER(A:A,ISNUMBER(FIND(" "&B1&" "," "&A:A&" "))))
或者:
=TEXTJOIN(", ",,IF(ISNUMBER(FIND(" "&B1&" "," "&A:A&" ")),A:A,""))
第二个选项是在 Excel-2019 年输入 CSE。
因为我正在使用 Excel 2016(没有 TEXTJOIN 函数),所以我尝试不使用 VBA 的方法是这样的 excel 文件:
https://www.dropbox.com/s/7c09ykr4redog4k/Concat%20without%20VBA.xlsx?dl=1
希望能帮到你