如何使用Excel VBA命名独立范围

时间:2016-11-03 12:16:20

标签: excel vba excel-vba for-loop

我正在尝试使用字符串变量命名多个单元格,然后添加一个数字。现在我有这个,但它不会循环遍历单元格,它只是命名循环中的最后一个,即D978。非常感谢你的帮助!

Sub NameRange_Add()
Dim cell As Range
Dim RangeName As String
Dim CellName As String
Dim i As Integer
Dim j As Integer


'Single Cell Reference (Worksheet Scope)

For j = 3 To 8
For i = 2 To 6
RangeName = "tag" & i
CellName = "D97" & j

  Set cell = Worksheets("TAG AD").Range(CellName)
  Worksheets("TAG AD").Names.Add Name:=RangeName, RefersTo:=cell

  Next i
Next j

End Sub

1 个答案:

答案 0 :(得分:0)

这段代码应该有效,就像我一样:

Sub NameRange_Add()
Dim RangeName As String
Dim Reference As String
Dim i As Integer

For i = 2 To 6
    RangeName = "MyTag" & i
    Reference = "='TAG AD'!$D$97" & i
    Worksheets("TAG AD").Names.Add name:=RangeName, RefersTo:=Reference
Next i

End Sub

这将产生以下引用名称: Sample

如果您需要更多帮助,请发表评论。

编辑:请注意,您需要为该范围提供有效名称,因为"tag" & i无效。您可以手动添加其中一个名称来手动检查。