首页 > 解决方案 > Google 表格 - 对关键字列表执行通配符搜索

问题描述

逻辑:我有两列在一张纸中包含描述性字符串。我有另一张表,其中包含一个包含关键字和与之关联的相应类别的列表。如果关键字包含在任一描述性列的字符串中,我希望类别出现。

场景示例:我正在创建高级自定义预算。我有一张所有费用都发生的表格(表格费用)。商店和费用描述提供描述每笔交易的位置和性质的长文本。用户必须手动为每个条目分配一个费用类型(其上有数据验证,由工作表标签限制)。这是耗时且麻烦的。我在工作表费用类型中策划了一个“搜索词”列表(A 列),它将呈现一个费用类型(B 列)。如果一个或两个描述列包含搜索词,我希望使用费用类型填充工作表费用列费用类型。可选(但会很好):如果返回多个搜索词,则留空

基本逻辑 IF [Expense Description] OR [STORE] CONTAINS [SEARCH TERM] , RETURN [POPULATE TYPE]

https://docs.google.com/spreadsheets/d/13aqcP6S0rPxkqRLfSNPaxml_yoq6ta_yjbpKZ6yFSQo/edit#gid=1927530784

似乎 VLOOKUP 和 SEARCH 的一些狂野组合可以做到这一点,但我没有找到任何有效的方法......这很容易,中间有一个 alteryx 或数据处理步骤,但我希望这个谷歌表成为一个集中的解决方案. 提前致谢。三个小时试图弄清楚这一点。我爱你神秘答案的人<3

标签: excelgoogle-sheetsgoogle-sheets-formulaspreadsheet

解决方案


在“费用副本”选项卡中,我在单元格 E2 中输入

={"Expense Type"; ArrayFormula(if(len(B3:B) + len(C3:C), iferror(vlookup(regexextract(regexreplace(LOWER(B3:B10&" "&C3:C10), "("&lower(textjoin("|", 1,  'Expense Types'!A2:A))&")","_$1_°"), "_(\w+)_"), 'Expense Types'!A2:B, 2, 0)),))}

我还在“费用类型”选项卡中添加了“温迪”。

看看有没有帮助?

在此处输入图像描述


推荐阅读