2

我在 VBA 中编写了一个脚本,将文本文件中的数字插入到工作表中。插入值后,Excel 建议我将值从字符串转换为数字。在单元格内,会出现一个绿色三角形。选择单元格后,您可以选择不同的选项来格式化单元格内的值。

我还尝试在 VBA 中将值转换为双精度值,CDbl(string)但没有任何反应。

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

我还尝试在选择方法时录制宏,但宏内没有保存任何内容。

有人知道怎么做吗?

在此处输入图像描述

4

2 回答 2

0

试试这个。我以单元格 A1 为例。此外,如果有十进制值,则不要Long使用 aDouble并相应地更改NumberFormat

Sub Sample()
    Dim clVal As Long

    With Sheet1.[a1]
        clVal = Val(.Value)
        .NumberFormat = "0"
        .ClearContents
        .Formula = clVal
    End With
End Sub
于 2012-08-03T09:36:32.483 回答
0

这可能看起来有点傻,但你试过Range("A1").Value = Range("A1").Value吗?

更一般地说,您可以遍历 myrange,假设它是您要修复的范围:

For Each c in myrange
   c.Value = c.Value
Next
于 2012-08-03T09:41:06.030 回答