VBA引用for循环中的项目

时间:2016-03-03 04:52:43

标签: excel vba

假设我有一个命名范围的快速循环:

Dim rng As Range
For Each itm In Range("List")
itm.Value = "fish"
next itm

工作正常。但如果我要将第三行更改为

itm.Offset(0,1).Value = "fish"

然后有问题,因为它不是范围(我认为)。有没有办法引用它的范围,或者设置一个for循环来引用单元格/范围而不是itm的值。 (为什么原来的有效?)

1 个答案:

答案 0 :(得分:0)

如果您明确声明它为Range

Dim itm as Range

然后,您的for..each块会将每个单元格作为范围返回

P.S。如果您只想将所有单元格设置为fish,那么您可以使用这些行,并完全避免循环:

Range("List").Value = "fish"

Range("List").Offset(0,1).Value = "fish"