如何将数字的文本表示形式转换为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)")

Excel似乎不能将2,553.57-识别为有效数字,因为它是字符串,因此,假设您在A1中的值为“2,553.57-”,您将需要做更多的工作:

= VALUE(IF(RIGHT(A2,1)=“-”,“-”&SUBSTITUTE(A2,“-”,“”))))

编辑

=VALUE(IF(RIGHT(A2,1)="-","-"&SUBSTITUTE(A2,"-",""),A2))

从Microsoft网站:
  • 文本可以采用可识别的任何恒定数字,日期或时间格式
    通过Microsoft Excel。如果文字不是这些格式之一,则VALUE会返回
    #值(value)!错误值。
  • 通常不需要在公式中使用VALUE函数,因为Excel
    自动根据需要将文本转换为数字。提供此功能
    与其他电子表格程序的兼容性。

  • 可以在Microsoft网站上找到更多信息:Value Function

    10-05 20:42
    查看更多