【问题标题】:Looking for a formula that recognises different digits in a cell [closed]寻找识别单元格中不同数字的公式[关闭]
【发布时间】:2019-01-04 15:11:13
【问题描述】:

我正在创建一个电子表格,用户可以在其中输入不同的数字并返回不同的结果。

例如,如果他们要输入一个以 07 开头的数字,则会显示 1、070 会显示 2、0345 3 等等。

我已经尝试过 IF 和 LEFT 公式,但我很挣扎!

非常感谢任何想法!

编辑:对不起,我试图不写战争与和平,但错过了太多。

用户将填写电话区号,例如0345 或 0714 或 0701 并且工作表将返回价格。

价格可能因前 4 位数字而异。为了简单起见,我希望它能够检测区号是否以 07 开头以显示“价格”1、070 价格为 2 和 0345 价格为 3。

我有 10 个不同的区号,但只是添加了上面的 3 个作为示例。

我希望这更清楚。

【问题讨论】:

  • 那么它应该显示有效位数吗?
  • 您尝试了哪些公式?他们返回了什么?
  • 为什么07 会返回10345 会返回3?我不明白。你能做=LEN(0+A1)吗(完全猜测逻辑是在任何前导0之后获取多个字符???)。
  • 抱歉,我在上面添加了一个编辑!

标签: excel formula


【解决方案1】:

要获取去掉前导零的字符串的长度,请使用数组函数

 =LEN(MID(A2,MATCH(TRUE,(MID(A2,ROW(INDIRECT("1:"&LEN(A2))),1)<>"0"),0),LEN(A2)))

将 A2 替换为用户将更改的单元格,然后在具有公式的单元格上按 [Ctrl Shift Enter] 以激活数组功能。

【讨论】:

  • 为什么不直接使用=LEN(--A2)
  • 我认为这值得一票,因为它适用于任何字符串(例如 000ABC),否则如果它纯粹是一个数字@JNevill 或 Scott Craner 的评论。
  • @ScottCraner Ooooh.. 我不知道那个公式。它要简单得多,并且符合 OP 的书面要求。如果您发布它,我会赞成它作为一个很好的答案!
  • OP 没有说它们必须是十进制数...
  • @TomSharpe OP 对输入或预期输出的原因没有多说。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-08-14
  • 1970-01-01
  • 2015-10-01
  • 1970-01-01
  • 2012-08-24
  • 2014-09-28
相关资源
最近更新 更多