我有一列数字,其中有空格。像这样:“ 32 445 423
”。如何删除所有空格,让 Excel 将其视为数字而不是字符串?
编辑:让我补充一些发现的其他信息。我的目标是将“ 32 445 423
”变成 32445423。如果我将字符串“ 32 445 423
”写入 excel 并使用=SUBSTITUTE(A1;" ";"")
它,就可以很好地删除空格。但我拥有的数字是从 csv 文件导入的。在SUBSTITUTE
对导入的数字运行时,只会删除前导空格和尾随空格。
答案1
我认为您导入的数据包含不间断空格而不是标准空格。因此,公式=SUBSTITUTE(A1," ","")
不起作用。不要使用空格键" "
在 SUBSTITUTE 公式中输入,请尝试使用不间断空格。您可以在字符映射中选择它或使用按键 Alt+0160。
编辑:
由于替换常规空格成功删除了前导空格和尾随空格,因此您应该使用嵌套替换公式:一个用于替换常规空格,另一个用于删除不间断空格。
=SUBSTITUTE(SUBSTITUTE(A1," ","")," ","")
您可以复制此公式并在您的工作簿中尝试。
答案2
只需对您选择的一组单元格进行搜索和替换,选择您的列并转到Home
和Find and Select
。搜索一个空格,然后用空值替换它。
答案3
或者,如果您想保留原始格式的数字,您可以使用替换函数在另一个单元格中提供字符串的修订版本:
=SUBSTITUTE(A2," ","")
答案4
此解决方案是将 1 个字符串拆分为 3 个数字,每个数字与另外 3 个数字之间用空格隔开。
为了教学目的,让我们考虑一下:
| A | B | C | D | E |
_____|_________|_________|_________|_________|_________|
| | | | | |
1 |123 45 67| | | | |
_____|_________|_________|_________|_________|_________|
| | | | | |
2 | | | | | |
_____|_________|_________|_________|_________|_________|
| | | | | |
3 | | | | | |
_____|_________|_________|_________|_________|_________|
| | | | | |
4 | | | | | |
_____|_________|_________|_________|_________|_________|
所以我们可以这样做来帮助解决下一个公式:
For B1, where we start our search in A1 string - first character: =1
For C1, where is the first space in A1: =SEARCH(" ";A1;B1)
For D1, where is the second space in A1: =SEARCH(" ";A1;C1)
For E1, the length of string in A1: =LEN(A1)
然后你想要什么:
For B2, to get first number: =SUBSTITUTE(A1;C1;C3-C1+1;"")
For C2, to get second number: =EXTRACT(A1;C1+1;D1-C1-1)
For D2, to get third number: =SUBSTITUTE(A1;B1;C2;"")
如果需要,您可以消除 B1:E1 中的辅助公式,包括 B2:D2 中的公式中的内容