VBA:将文本转换为数字

38

我有一列数字,但由于某种原因被格式化为文本,这导致我无法使用像小计函数这样的算术函数。如何最好地将这些“文本数字”转换为真正的数字?

以下是特定问题的截图:Error

我尝试了以下代码片段,但未成功:

Columns(5).NumberFormat = "0"

 Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False

嗨,斯科特 - 我同意这是一个好的解决方案。然而,我现在可以听到最终用户抱怨“一切都加起来等于零!”。由于VBA已经被用来运行脚本(我应该在问题中提到这一点),我认为最好的方法是在第一时间包含代码以避免这种对话。 - aLearningLady
使用CInt(Cell().Value)将单元格的值转换为数字。 - gizlmo
我曾经遇到过类似的问题,即货币值由BRL中的R$ 0,00组成,而CCUR()函数真的解决了我的难题。我认为Cdec()函数也会有所帮助。请查看链接中的其他函数。如何使用CDEC函数(VBA) - Anderson Wanselowski
我知道已经有一段时间了,但你输入值的方式可能不正确。 如果你这样做: " cell.Value = "865" " ,单元格会被填入文本而不是数字。 如果你这样做 " cell.value = 865 ",单元格会被填入数字。 - smirnoff103
11个回答

-1

我在让上述代码工作时遇到了问题。对我来说,乘以1就解决了问题:-)

    Cells(1, 1).Select
    Cells(1, 1) = ActiveCell * 1 

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接