VBA发现单元格范围错误

时间:2014-05-09 15:56:23

标签: excel vba excel-vba

我按照以下范围放置MyRange = f2:g10,我想我能如何通过f1,f2等。问号在哪里。我怎么能做到这一点,

Function CountRed(MyRange As Range)
CountRed = 0

Range(?).Interior.Color = RGB(255, 0, 0)
End Function

2 个答案:

答案 0 :(得分:2)

您可以一次性设置颜色:

MyRange.Interior.Color = RGB(255, 0, 0)

或创建一个Range变量并循环遍历每个单元格:

Dim rng as Range

For Each rng In MyRange
    rng.Interior.Color = RGB(255, 0, 0)
Next rng

答案 1 :(得分:1)

我会使用 sub 而不是 UDF:

Sub MAIN()
    Dim MyRange As Range
    Set MyRange = Range("F2:G10")
    Call CountRed(MyRange)
End Sub

Sub CountRed(r As Range)
    r.Interior.Color = RGB(255, 0, 0)
End Sub

修改#1:

我会使用 sub 而不是 UDF ,因为:

  • 没有返回任何值
  • 正在修改工作表单元格

有关更多教程信息,请参阅OZGRID UDF Training