5

我相信我想做的很简单。我想遍历 Range 参数并更改该范围内每个单元格的值。

Function test(thisRange As Range)
    For Each c In thisRange.Cells
         c.Value = 1
    Next
End Function

以上是我想做的一个简单示例,但似乎不起作用。当我调试它时,Excel 似乎在遇到c.Value = 1. 为什么这不起作用?

4

1 回答 1

2

这对我有用

Option Explicit

Sub Sample()
    Dim ret
    ret = test(Sheets("Sheet1").Range("A1:A15"))
End Sub

Function test(thisRange As Range)
    Dim c As Range
    For Each c In thisRange.Cells
         c.Value = 1
    Next
End Function

顺便说一句,我们不需要使用函数。函数用于返回一个值。尝试这个

Option Explicit

Sub Sample()
    test Sheets("Sheet1").Range("A1:A15")
End Sub

Sub test(thisRange As Range)
    Dim c As Range
    For Each c In thisRange.Cells
         c.Value = 1
    Next
End Sub
于 2012-10-04T20:07:36.630 回答