检查单元格是否包含所有逗号分隔的值

时间:2018-07-01 23:50:30

标签: google-sheets formulas

我有一张包含以下数据的工作表:

| Text                                    | Value    |  Value   |  Value   |
|:----------------------------------------|:---------|:---------|:---------|
|Jax and Jax friend Kung Lao fight Raiden | jax      | kung lao | raiden   |
|Jax and Jax friend Kung Lao fight Raiden | kitana   | kung lao | raiden   | 

以及以下公式:

=SUMPRODUCT( -- ISNUMBER(SEARCH(B1:D1;A1)))=COUNTA(B1:D1)
=SUMPRODUCT( -- ISNUMBER(SEARCH(B2:D2;A2)))=COUNTA(B2:D2)

哪个返回:

TRUE
FALSE

这按预期工作。我在文本单元格中找到所有值的 TRUE ,如果缺少一个或全部,则为 FALSE

现在,我想进行修改,所以我只想在一个逗号分隔的单元格中进行搜索,而不是在多个单元格中进行搜索。像这样:

| Text                                    | Values                 | Formula |
|:----------------------------------------|:-----------------------|:--------|
|Jax and Jax friend Kung Lao fight Raiden | jax,kung lao,raiden    | TRUE    |
|Jax and Jax friend Kung Lao fight Raiden | kitana,kung lao,raiden | FALSE   |

我尝试过使用=SUMPRODUCT( -- ISNUMBER(SEARCH({B2};A2)))=COUNTA({B2}),但是它不起作用。

2 个答案:

答案 0 :(得分:2)

尝试拆分逗号分隔列表,并使用拆分数组像一系列单元格一样。

html: '<div id="instance1"></div>' or id="instance2"></div>'

enter image description here

答案 1 :(得分:1)

另请参阅:

=AND(ARRAYFORMULA(REGEXMATCH(A1,"(?i)"&SPLIT(B1,",")&"( |$)")))

  • (?i)-不区分大小写
  • ( |$)-空格或文本结尾,仅匹配整个单词。

单元格C1的ArrayFormula变体:

=ArrayFormula(TRANSPOSE(NOT(REGEXMATCH(QUERY(TRANSPOSE(filter(REGEXMATCH(A:A,"(?i)"&SPLIT(B:B,",")&"( |$)"),A:A<>"")),,10^99),"FALSE"))))