我有一个用户,他从 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 文件中不起作用。但一个小技巧就解决了这个问题:
选择包含文本格式的数字的列
Ctrl+ F--> 替换
.
为,
(通常我会讨厌这样的解决方案,但正如所说,我只是将其发布在这里,因为解决问题的“正常”方法对我来说不起作用。)
答案4
根据您的区域设置,VALUE() 可能会返回错误。
如果是这样的话,也许数值()可以帮你。
在小数分隔符为逗号的语言环境中:
=VALUE("5,00") // Returns integer 5
=VALUE("5.00") // Throw an error
=NUMBERVALUE("5,00";",") // Returns integer 5
=NUMBERVALUE("5.00";".") // Returns integer 5