【问题标题】:Excel evaluating text strings in cellExcel评估单元格中的文本字符串
【发布时间】:2020-04-27 03:05:57
【问题描述】:

我想搜索一个单元格,该单元格包含一个字符串,该字符串可以有多个关键字,单数和一起,并根据存在的单词分配一个值。

这些是可能出现在单元格中的关键词以及我想使用公式返回/分配的值。

“增长” - 返回“1”

“收入” - 返回“0.5”

“边界” - 返回“0.5”

“边界”和“收入” - 返回“1”

“非星” - 返回“0”

我开发了这个公式,它适用于所有字符串,除了那些在一个单元格中包含“边界”和“收入”的字符串。

=IF(ISBLANK($A1),"",IFS(ISNUMBER(SEARCH("增长",$A1)),"1",ISNUMBER(SEARCH("收入",$A1)),"0.5" ,ISNUMBER(SEARCH("Borderline",$A1)),"0.5",ISNUMBER(SEARCH("Non Star",$A1)),"0"))

我已经开发了一个 AND() 公式来满足包含边界和收入的字符串,但看不到如何将其合并到我的主公式中。

=IF(AND(COUNT(SEARCH("Income",$A1))>0,COUNT(SEARCH("Borderline",$A1))>0),"1","")

谁能帮帮我?不用说它变得非常复杂/令人困惑,所以也许总体上有更好的方法?

【问题讨论】:

    标签: excel excel-formula


    【解决方案1】:

    创建一个包含单词和值的表格。然后将此表用作查找范围。

    【讨论】:

      【解决方案2】:

      我猜“边界”和“收入”的1 只是“边界”0.5 和“收入”的总和,所以你可以用额外的“边界收入”线来处理它。 例如:

      注意 这是一个数组公式,需要通过CTRLSHIFTENTER

      =IFERROR(SUMPRODUCT(IF(ISNUMBER(SEARCH($C$1:$C$4,A1)),$D$1:$D$4)),"")
      

      或者没有额外的桌子

      =IFERROR(SUMPRODUCT(IF(ISNUMBER(SEARCH({"Growth","Income","Borderline","Non Star"},A1)),{1,0.5,0.5,0})),"")  
      

      把它放在B1 里然后把它拉下来。但请注意,这个公式总结了相应出现的所有值,如第 5 行所示。如果不需要这种行为,请告诉我,我会尝试相应地更改公式。

      【讨论】:

      • 是的,表格方法是一种更好的方法,但对我来说,将其折叠为没有表格的公式效果最好。谢谢你们!
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-06-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多