Excel VBA-通过循环定义范围变量

Excel VBA-通过循环定义范围变量,excel,vba,Excel,Vba,我想知道是否有可能通过for..next循环定义范围变量 诸如此类 Public Sub DefineRanges() Dim i As Long Dim rngLine1, rngLine2 As Range For i = 1 To 2 Set Replace("rngLinex", "x", i) = ThisWorkbook.Sheets("Sheet1").Range("A" & i) Next i End Sub Public Sub DefineRang

我想知道是否有可能通过for..next循环定义范围变量

诸如此类

Public Sub DefineRanges()
 Dim i As Long
 Dim rngLine1, rngLine2 As Range

 For i = 1 To 2
    Set Replace("rngLinex", "x", i) = ThisWorkbook.Sheets("Sheet1").Range("A" & i)
 Next i
End Sub
Public Sub DefineRanges()
 Dim i As Long
 Dim rngLine1, rngLine2 As Range

 For i = 1 To 2
    Set rngLine & i = ThisWorkbook.Sheets("Sheet1").Range("A" & i)
 Next i
End Sub
还是那样

Public Sub DefineRanges()
 Dim i As Long
 Dim rngLine1, rngLine2 As Range

 For i = 1 To 2
    Set Replace("rngLinex", "x", i) = ThisWorkbook.Sheets("Sheet1").Range("A" & i)
 Next i
End Sub
Public Sub DefineRanges()
 Dim i As Long
 Dim rngLine1, rngLine2 As Range

 For i = 1 To 2
    Set rngLine & i = ThisWorkbook.Sheets("Sheet1").Range("A" & i)
 Next i
End Sub

提前感谢。

正如@JohnColeman所述,使用范围数组:

Sub defineranges()
Dim i As Long
Dim RngArr(1 To 2) As Range

For i = 1 To 2
    Set RngArr(i) = ThisWorkbook.Worksheets("Sheet1").Range("A" & i)
Next i

For i = 1 To 2
    Debug.Print RngArr(i).Value
Next i
End Sub

正如@JohnColeman所述,使用范围数组:

Sub defineranges()
Dim i As Long
Dim RngArr(1 To 2) As Range

For i = 1 To 2
    Set RngArr(i) = ThisWorkbook.Worksheets("Sheet1").Range("A" & i)
Next i

For i = 1 To 2
    Debug.Print RngArr(i).Value
Next i
End Sub

这就是路。我的第二个建议实际上不起作用(至少不是很明显),所以我删除了那个评论。当我尝试将相同的东西应用到字符串时,它实际上不起作用。。有什么建议吗?Dim strArr(1到2)作为字符串是否适用?这是一种方法。我的第二个建议实际上不起作用(至少不是很明显),所以我删除了那个评论。当我尝试将相同的东西应用到字符串时,它实际上不起作用。。有什么建议吗?Dim strArr(1到2)作为字符串是否适用?