【问题标题】:How to get rid off only certain zeros formula?如何摆脱某些零公式?
【发布时间】:2019-10-25 11:10:37
【问题描述】:

好的,所以我有一个很好的公式,直到出现问题。基本上我需要去掉 10 个字符字符串/范围中间的零,即 AB00005879 来做到这一点,我使用了公式 SUBSTITUTE(NameRange,"0","") 它给出了我很好的 AB5879 解决方案。有时最后的数字只有 3 位长 AB00000975 所以我的公式会给我 AB975 一切都很好,直到我遇到问题。一些字符串以 AB00004020 的形式出现,所以我的公式提取了每个零,留下 AB42。有没有办法只提取中间的前四个零并始终将数字保持在and?所以最后一个场景看起来像 AB4020。在此先感谢

SUBSTITUTE(NameRange,"0",""))

【问题讨论】:

  • 你的字符串是否总是以AB等两个字母开头?
  • Hi Terry String 总是以两个字母开头,但可以是不同的,例如 AB、AZ、AC 等

标签: excel excel-formula


【解决方案1】:

如果您总是在开头有两个字符,然后是一些零,然后是一些数字,所有这些都是您想要保留的,这应该可以工作

=LEFT(A1,2) & VALUE(RIGHT(A1,LEN(A1)-2))

【讨论】:

    【解决方案2】:

    编辑#2

    如果您的字符串始终以两个字母开头,例如AB,后跟随机数的零,然后是您要保留的数字字符串,请尝试

    =LEFT(A1,2)&RIGHT(A1,11-AGGREGATE(15,6,ROW($3:$10)/(--MID(A1,ROW($3:$10),1)>0),1))
    

    用您的实际情况替换A1

    【讨论】:

    • Hi Terry String 总是以两个字母开头,但我不知道它们会是什么样子。对此有何建议?
    • @accurist 我已经使用 LEFT 更新了我的答案以找到前两个字母,但我知道我的解决方案存在一些缺陷,我认为 SJR 提供了一个更好的解决方案.
    • 您需要 LEN 而不是硬编码 10?无法理解,所以不确定。
    • @SJR 没关系,如果字符串是 AB01000002AB00120034,则 LOOKUP 函数将失败,因为 0203 的位置将由 LOOKUP 函数返回,而不是在这两种情况下01 的位置。我已经更新了另一个应该适用于所有场景的解决方案,但与你的相比它看起来很傻,它更简单直接。干得好:)
    猜你喜欢
    • 1970-01-01
    • 2022-01-22
    • 1970-01-01
    • 2017-01-25
    • 2020-12-04
    • 1970-01-01
    • 2011-03-16
    • 1970-01-01
    相关资源
    最近更新 更多