Excel formula 我怎样才能让Excel停止使用字母“;";是否将文本数据作为excel公式中的数学函数来访问该文本数据?

Excel formula 我怎样才能让Excel停止使用字母“;";是否将文本数据作为excel公式中的数学函数来访问该文本数据?,excel-formula,excel-2013,Excel Formula,Excel 2013,我将此p-1-A6E100作为我的binId列中的数据。 这是第一层,模块A,通道6,货架E,插槽100。 我有一个公式,如果过道号是1、2或3位长,我可以将其拉出: =IF(ISNUMBER(VALUE(MID([@binId],6,3))),VALUE(MID([@binId],6,3)),IF(ISNUMBER(VALUE(MID([@binId],6,2))),VALUE(MID([@binId],6,2)),VALUE(MID([@binId],6,1)))) 任何时候货架上有一个“

我将此
p-1-A6E100
作为我的
binId
列中的数据。 这是第一层,模块A,通道6,货架E,插槽100。 我有一个公式,如果过道号是1、2或3位长,我可以将其拉出:

=IF(ISNUMBER(VALUE(MID([@binId],6,3))),VALUE(MID([@binId],6,3)),IF(ISNUMBER(VALUE(MID([@binId],6,2))),VALUE(MID([@binId],6,2)),VALUE(MID([@binId],6,1))))
任何时候货架上有一个“E”,都会导致通道号的结果不正确。在这种情况下:“60。”


现在,我刚刚决定用“E”来代替占位符字符,但我想知道是否有更简单的方法?

下面应该用1、2或3个数字来代替过道号。基本上,它是检查ailse编号的第一个字符后的字符是数字还是文本。测量数字的长度。根据结果,它将该块计算为文本。如果需要将它作为一个数字,可以将它放在以文本形式返回的函数前面,或者将函数乘以1

=IF(ISNUMBER(--MID([@binId],7,1)),IF(ISNUMBER(--MID([@binId],8,1)),MID([@binId],6,3),MID([@binId],6,2)),MID([@binId],6,1))

是的,我试着用各种方式格式化单元格。公式本身存在问题。它将把字符“6E1”解释为6*10^1,即60。我猜垃圾箱号码的格式是不可变的,因此您需要设计一种更好的方法来解析垃圾箱号码的各个部分。