Excel:如何将“字符串”转换为“数字”?

Excel:如何将“字符串”转换为“数字”?

我有一个用户,他从 SQL 数据库发出查询,返回一系列以下形式的字符串:

000123123.23000
000123123.23000
000123123.23000
000123123.23000
000123123.23000

这些确实是数字,但是无法相加。解决此问题的正确方法可能是在 SQL 查询中转换数据,但 Excel 查询查看器无法显示它。作为解决方法,我

 = <CELL> +1 -1.

有没有更优雅的解决方案?

答案1

我认为价值函数对你有用

 = VALUE(< CELL >)

PD:

在西班牙语中我们使用函数 VALOR:

 = VALOR(< CELL >)

我认为英语也应该一样

答案2

我用这个小宏

Sub txttonum()
    For Each tcell In Selection.Cells
        If TypeName(tcell.Value) = "String" Then
            tcell.Value = Val(tcell.Value)
        End If
    Next
End Sub

如果所有突出显示的单元格是字符串,则将其转换为数字

答案3

我遇到了同样的问题,但 VALUE 函数在我的 tsv 文件中不起作用。但一个小技巧就解决了这个问题:

  1. 选择包含文本格式的数字的列

  2. Ctrl+ F--> 替换.,

(通常我会讨厌这样的解决方案,但正如所说,我只是将其发布在这里,因为解决问题的“正常”方法对我来说不起作用。)

答案4

根据您的区域设置,VALUE() 可能会返回错误。

如果是这样的话,也许数值()可以帮你。

VALUE 与 NUMBERVALUE 比较

在小数分隔符为逗号的语言环境中:

=VALUE("5,00") // Returns integer 5
=VALUE("5.00") // Throw an error

=NUMBERVALUE("5,00";",") // Returns integer 5
=NUMBERVALUE("5.00";".") // Returns integer 5

相关内容