将存储为文本的数字转换为数字?

use*_*776 1 excel vba

如何将存储为文本的数字转换为数字?

我试过设置:

ActiveSheet.Range("H154").NumberFormat = "General"
Run Code Online (Sandbox Code Playgroud)

但它不起作用!

我发现唯一可行的方法是使用“文本到列”或单击单元格进行编辑,然后单击 Enter。

但我真的很想找到一种方法来使用 VBA 将存储为文本的工作表中的数字单元格转换为数字。

chr*_*sen 6

一般技术是复制 PasteSpecial,乘以 1

在代码中,是这样的:

Sub ConvertToNumber()
    Dim rng As Range
    Dim cl As Range
    Dim rConst As Range

    ' pick an unused cell
    Set rConst = Cells(1, 4)
    rConst = 1

    Set rng = Cells.SpecialCells(xlCellTypeConstants)
    rng.NumberFormat = "General"
    rConst.Copy
    rng.PasteSpecial xlPasteValues, xlPasteSpecialOperationMultiply

    rConst.Clear
End Sub
Run Code Online (Sandbox Code Playgroud)