gpt4 book ai didi

excel - 有没有办法使用excel公式找到一组字符中的任何一个

转载 作者:行者123 更新时间:2023-12-04 22:13:29 24 4
gpt4 key购买 nike

我的数据使用范围或小于符号来表示“介于 0 和数字之间”。但是多个字符用于同一目的。
它看起来像下面(前两列),加上一列显示我想要的结果:


国家
平均热狗消费量
期望的输出


马杜帕兰
10-200
105

示例
50—1000
525

巴黎共和国
<1000
500

发明
≤5000
2500


加上许多行,其中第二列中的数据是纯数字的,不需要精炼成数字
我可以使用这个公式来计算有范围的中点:

=IFERROR(AVERAGE(LEFT(C2,FIND("–",C2)-1),RIGHT(C2, LEN(C2)-FIND("–",C2))), A2)
但它们只涵盖一种破折号( - 而不是 )。同样,如果我想用 < 将行中的数字减半和 我需要在那里复制一个公式。
有没有办法从一组中找到多个不同的角色?我的理解是 find查找整个字符串。 substitute是一种解决方法,但我必须替换“字符集”中的每个不同值。
在正则表达式中,这只是 [-—] .
如果这很重要,我正在使用 Excel 2013

最佳答案

这不是一个完美的解决方案,但您可以尝试以下方法。这会将那些文本模式替换为表示要使用的公式的替换:

  • 创建一个引用表(我在 I1:K5 中做了这个)
    |模式 |模式名称 |替换规则 |
    |------- |------------ |----------------- |
    |— |双破折号 |/2+0.5* |
    |- |破折号 |/2+0.5* |
    |< |lt |0.5* |
    |≤ |lte |0.5* |
  • 在第三列中输入以下数组公式(使用 Ctrl + Shift + Enter 确认)=IF(ISNUMBER(B2),B2,"'="&SUBSTITUTE(B2,INDEX($I$2:$I$5,MIN(IF(ISNUMBER(FIND($I$2:$I$5,B2)),ROW($I$2:$I$5)-1,99))),INDEX($K$2:$K$5,MIN(IF(ISNUMBER(FIND($I$2:$I$5,B2)),ROW($I$2:$I$5),99)-1))))
  • 将第三列和过去的值复制到第四列
  • 替换所有 ' 's 没有使用 Ctrl + H 来评估表达式

  • 我的 Result :


    国家
    平均热狗消费量
    期望的输出
    配方糊
    替换后的输出 ' s


    马杜帕兰
    10-200
    105 '=10/2+0.5*200105

    示例
    50—1000
    525 '=50/2+0.5*1000525

    巴黎共和国
    <1000
    500 '=0.5*1000500

    发明
    ≤5000
    2500 '=0.5*50002500

    关于excel - 有没有办法使用excel公式找到一组字符中的任何一个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71525849/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com