【问题标题】:Adding three cells if a cell has a value, and if it doesn't, adding two如果单元格有值,则添加三个单元格,如果没有,则添加两个
【发布时间】:2019-11-30 01:17:37
【问题描述】:

所以基本上这就是我想要做的:

我需要正常添加单元格 B12 和 C12,但是 -

如果单元格 C3 有特定的文本值(比如说“Apples”),我需要添加 B12、C12 和 K3。

但如果 C3 -isn't- Apples,它应该只添加 B12 和 C12。

此外,我有两个版本的 Apples:“Apples - Red”和“Apples - Green”。也许是一个 Apples 通配符?

【问题讨论】:

    标签: regex if-statement google-sheets sum google-sheets-formula


    【解决方案1】:

    尝试简单:

    =IF(COUNTIF(C3, "Apples*"), SUM(B12:C12, K3), SUM(B12:C12))
    


    或:

    =IF(REGEXMATCH(C3, "Apples"), SUM(B12:C12, K3), SUM(B12:C12))
    


    如果你的“苹果”是数字,你可以这样做:

    =IF(COUNTIF(C3&"", "123*"), SUM(B12:C12, K3), SUM(B12:C12))
    

    或:

    =IF(REGEXMATCH(C3&"", "123"), SUM(B12:C12, K3), SUM(B12:C12))
    

    【讨论】:

      【解决方案2】:

      =if(REGEXMATCH(C3, "(?i).*apples.*"), SUM(B12,C12,K3), SUM(B12,C12))

      (?i).*apples.*regular expression 匹配任何包含单词 apples 的字符串,忽略大小写。因此它将匹配以下任何单元格内容:Apples - RedAWFEFAPPLESWEFWEapplesapples - purplered aPPLES 等。如果您想更严格,可以稍微缩小正则表达式。

      分解一下,正则表达式的构建如下:

      • (?i) - 忽略整个匹配模式的大小写
      • . - 匹配任何字符。
      • * - 重复匹配 0 次或更多次。
      • apples - 表示我们要匹配苹果
      • .* - 和上面一样,匹配任何字符串,包括零长度字符串。

      所以它翻译为“忽略大小写,匹配任何包含苹果的字符串。”

      REGEXMATCH() 是一个谷歌电子表格函数,可让我们将单元格的内容与正则表达式进行比较。

      其余的只是一个标准的if

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2021-12-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2022-01-27
        • 1970-01-01
        • 2022-09-23
        相关资源
        最近更新 更多