如何将数字的文本表示形式转换为 Excel 数字,尤其是负值?例如,字符串“9,669.34”(不带引号)应变为数字 9,669.34
,字符串“2,553.57-”(同样不带引号)应变为数字 (2,553.57)
.
当我使用公式 =SUBSTITUTE(A1,CHAR(160),"")+0
时,它效果很好,但仅适用于正值。我收到了所有负值的结果 #VALUE!
。
最佳答案
对于 (2,553.57),您可以使用 VALUE
,例如 VALUE("(2,553.57)")
。
当 2,553.57- 是字符串时,Excel 似乎无法将其识别为有效数字,因此假设 A1 中的值为“2,553.57-”,则需要做更多工作:
=VALUE(IF(RIGHT(A2,1)="-","-"&SUBSTITUTE(A2,"-","")))
编辑
=VALUE(IF(RIGHT(A2,1)="-","-"&SUBSTITUTE(A2,"-",""),A2))
来自 Microsoft 网站:
- 文本可以采用任何可识别的常数、日期或时间格式 由微软Excel。如果文本不是这些格式之一,则 VALUE 返回 #值(value)!错误值。
- 您通常不需要在公式中使用 VALUE 函数,因为 Excel 根据需要自动将文本转换为数字。提供了这个功能 与其他电子表格程序兼容。
更多信息可以在微软网站上找到:Value Function
关于excel - 在 Excel 中将文本转换为数字格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3717088/