检查单元格是否包含列表中的字符串

Check if cell contains strings in a list

我有一个 Excel sheet,其中有很多我想分类的不同条目(费用)。为此,我创建了另一个 sheet,其中包含杂货、夜间外出等不同的条目类别,并将每个条目放在一列中。

这是我的开销sheet:

描述 价值 类别
卡片 - Foetex 于 3 月 10 日购买 350 ?
卡片 - 3 月 10 日购买的 Mikkeller 350 ?

这就是类别 sheet:

杂货 夜游
福泰斯 米凯勒
厄玛 去奥埃尔

我想要做的是在费用 sheet 的第 3 列的类别 sheet(杂货和夜间外出)上定义类别。因此,类别 sheet 中的内容将是费用 sheet 描述列中文本的子字符串。因此,例如,如果描述中包含“Foetex”,则类别应为杂货。

我试过Match、countif等,但都无济于事。

有人知道解决这个问题的方法吗?

对于这个答案我做了以下假设:

  • Sheets 被命名为“费用”和“类别”,并且在同一个工作簿中
  • 以上两个表格都从Cell A1
  • 开始

Sheet“费用”Cell C2(您的“类别”列)中的公式应为:

=CONCATENATE(IF(COUNTIF(A2, "*" & Categories!A:B & "*")>0, Categories!A:B, "")) 然后按 ctrl+enter 将其应用为数组公式。

Categories!A:B 替换为您的类别范围(如果它更长或更宽),但请确保第二个范围 Categories!A:B 保持在顶行。

并且当您将公式复制到类别列的其余部分时,请记住使用 absolute references 来保存范围更改。