如何在vba中的循环内使用NumberFormat方法
我是新的VBA,我有一个范围,当范围内的值小于0,那么我将乘以1000,然后通过使用NumberFormat
方法更改其格式。 但不知何故,这是行不通的。 错误代码在这一行: RngToThousand.NumberFormat = "$-#,##0,""K"""
。 错误说“对象需要”,我猜数据types有问题。 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需要一个对象,如Range,而你的RngToThousandvariables不是一个对象。 我testing了以下,它工作正常:
If Rng.Value < 0 Then Rng.Value = Rng.Value * 1000 Rng.NumberFormat = "$-#,##0,""K""" ...