格式化excel单元格 - 删除除数字

时间:2016-02-09 11:07:49

标签: excel excel-formula excel-2010

有没有办法写一些公式来删除单元格中的所有字符,只过滤掉数字/数字?

例如:

po63; 22kv为6322.

这是一个简单的问题,在某些编程语言中有一种方法,所以我怀疑excel中也存在这样的东西,但到目前为止我还没有找到解决方案!

2 个答案:

答案 0 :(得分:2)

每个字符串总共限制15个数字,数组公式**

=NPV(-0.9,IFERROR(MID(A1,1+LEN(A1)-ROW(INDEX(A:A,1):INDEX(A:A,LEN(A1))),1)/10,""))

将单元格格式化为常规(Excel习惯假设从NPV返回将是货币。)

此致

**数组公式的输入方式与'标准'相同。公式。您只需按住CTRL和SHIFT键,然后按ENTER键,而不是按ENTER键。如果您已正确完成,您会注意到Excel在公式周围放置了大括号{}(尽管不要尝试自己手动插入这些括号)。

答案 1 :(得分:0)

经过深思熟虑(请参阅我在XOR帖子下面的评论)我有一个替代XOR公式的方法 - 在过程中非常相似但是使用不同的步骤来实现目标:

query

由于这是一个数组公式,因此必须使用CTRL + SHIFT + ENTER确认,而不是仅使用ENTER或TAB确认。

这样做是取A1中字符串的各个字符,从最右边的字符开始[它使用RIGHT公式从最右边的字符开始,初始长度为1,然后是2等等到字符串的长度,然后它使用LEFT字符来抓取特定的迭代],并尝试将该字符乘以10 ^ [小数位]。如果它创建了#VALUE错误,则表示该字符是字符串,而不是数字。否则,它将每个字符放在与其在原始字符串中的位置相关联的小数位。

然后将整个事物转换为字符串并用“”代替“0”,以纠正小数位不正确的事实。与XOR的公式一样,如果最终数字> 1,则会失败。 10 ^ 15,因为Excel的浮点计算问题。

我认为这不一定是一种更简单的方式,只是一种不同的方式,可以帮助你理解它是如何工作的。