如何在VBA中的循环中使用numberFormat方法



我是vba的新手,我有一个范围,当该范围中的值小于0时,我将乘以1000,然后通过使用使用其格式NumberFormat方法。但是不知何故它行不通。错误代码在此行上:RngToThousand.NumberFormat = "$-#,##0,""K"""。错误说"必需对象",我想数据类型有问题。感谢Anyhelp,谢谢。

以下是我拥有的代码:

Dim Rng As Range
Dim RngToNum As Range
Set RngToNum = Range("H2:J21")
For Each Rng In RngToNum
    If Rng.Value < 0 Then
        RngToThousand = Rng.Value * 1000
        RngToThousand.NumberFormat = "$-#,##0,""K"""
    Else: Rng.NumberFormat = ""
    End If
Next

numberFormat需要一个范围之类的对象,而您的rngtoth千变量不是对象。我测试了以下测试,它可以正常工作:

    If Rng.Value < 0 Then
        Rng.Value = Rng.Value * 1000
        Rng.NumberFormat = "$-#,##0,""K"""
    ...

最新更新