Excel中的值从string更改为数字

我在VBA中编写了一个脚本,将文本文件中的数字插入到工作表中。 插入值后,Excelbuild议我将string的值转换为数字。 在单元格内,出现一个绿色的三angular形。 select单元格后,可以select不同的选项来格式化单元格内的值。

我也尝试将值转换为CDbl(string) VBA中的双倍,但没有任何反应。

更改NumberFormat也不起作用。 我在VBA和Excel中尝试了不同的值。

我也试图在select方法的时候logging一个macros,但是没有任何东西保存在makro里面。

有人知道如何做到这一点?

在这里输入图像描述

尝试这个。 我以单元格A1为例。 此外,如果有十进制值,那么而不是Long使用Double NumberFormat ,并相应地更改NumberFormat

 Sub Sample() Dim clVal As Long With Sheet1.[a1] clVal = Val(.Value) .NumberFormat = "0" .ClearContents .Formula = clVal End With End Sub 

这可能看起来有点愚蠢,但你有没有尝试Range("A1").Value = Range("A1").Value

更一般地说,你可以通过myrange循环,假设它是你想要修复的范围:

 For Each c in myrange c.Value = c.Value Next