"对于每个细胞"在命名范围的子集中?

时间:2014-11-09 22:20:59

标签: excel vba excel-vba named-ranges

我猜这很容易。我想循环遍历VBA中的命名范围,但我想跳过范围中的第一个单元格。有人可以帮忙吗?

(PS。我是VBA新手,不是训练有素的开发人员,也不是自学。这个论坛已经非常有用了。但如果你认为我还没有尝试过在问之前解决这个问题,你错了。)

3 个答案:

答案 0 :(得分:2)

dim i as long, r as range

set r = range("name")
for i = 2 to r.cells.count
  msgbox r.cells(i).value
next

答案 1 :(得分:2)

@GSerg已经确定了这一点,但由于您有使用For each执行此操作的后续问题,这里有一种方法:

first = True
For Each c In r.Cells
  If Not first Then
    c.Value = "Testing"
  End If
  first = False
Next

答案 2 :(得分:2)

这是另一种方式

Sub AllButFirst()

    Dim rCell As Range
    Dim rRng As Range

    Set rRng = Sheet1.Range("namedrange")

    For Each rCell In rRng.Offset(1, 0).Resize(rRng.Rows.Count - 1, rRng.Columns.Count).Cells
        rCell.Value = "testing"
    Next rCell

End Sub