VBA对于每个单元格的范围格式为百分比

时间:2017-03-16 21:06:07

标签: vba excel-vba loops number-formatting percentage

我已经四处寻找这个,看起来很简单,但我无法让它发挥作用。

我有一个表,一列需要格式化为百分比。下面是我的代码,但它没有格式化单元格,只是将它们保留为小数。

我认为这是因为cell,即使声明为范围,实际上是单元格的值,所以我不知道如何引用该范围。

我的returnRebate变量被声明为一个范围,循环正在循环到正确的范围。

代码:

Dim cell As Range, p As Double
For Each cell In returnRebate
    p = cell.Value

    If p <> 0 And p > 1 Then
        p = p * 0.01
        cell.Value = p
        cell.NumberFormat = "Percent"    'Not formatting here
     ElseIf p < 1 And p > 0 Then
        'do nothing to it
    Else
        cell.Value = vbNullString
    End If
Next

1 个答案:

答案 0 :(得分:9)

尝试将.NumberFormat='Percent'替换为.NumberFormat="0.00%"