我有不同房间测量数据集(不同长度)的工作簿。我需要对每个数据集进行排序。 我的代码找到每个数据集的起始行和结束行,并将它们存储为StartRowRoom1,EndRowRoom1,StartRowRoom2,EndRowRoom2等。
我想像这样在while循环中浏览每个数据集。
Dim StartRowRoom1 As Integer
Dim StartRowRoom2 As Integer
Dim EndRowRoom1 As Integer
Dim EndRowRoom2 As Integer
n = 1
While n < NumberOfRooms
startRow = "StartRowRoom" & n
endRow = "EndRowRoom" & n
With Range(Cells(startRow, 4), Cells(endRow, 4))
.FormulaR1C1 = "=RC[-2]+RC[-1]"
#sorting and graph creation
End With
n = n + 1
Wend
我的问题是startRow和endRow变量是字符串(“StartRowRoom1”和“EndRowRoom1”,n = 1)。所以它们不能用在Cells()中。我希望他们引用定义为整数的变量。 有没有人有解决方案?
答案 0 :(得分:1)
这就是数组的用途。
您应该将变量声明为
Dim StartRowRoom(1 to 2) As Integer
Dim EndRowRoom(1 to 2) As Integer
StartRowRoom(1) = [your value here]
StartRowRoom(2) = [your value here]
EndRowRoom(1) = [your value here]
EndRowRoom(2) = [your value here]
然后你可以访问它们
startRow = StartRowRoom(n)
endRow = EndRowRoom(n)
使用n
作为索引
答案 1 :(得分:0)
我认为你应该尝试存储StartRowRoom1变量,比如Range类型,并使用.offset()和.end()来获取引用。
然后在你的循环中你不需要细胞(,):
With Range(startRow, endRow) ...