VBA运行代码直到列范围的最后一行
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VBA运行代码直到列范围的最后一行相关的知识,希望对你有一定的参考价值。
我的代码成功地解决了我的最后一行代码然后在达到设置数据范围时给出运行时错误1004但我希望代码运行到我的范围中的最后一行。有谁知道如何修复我的代码?
Sub PopulatingArrayVariable()
Dim myArray() As Variant
Dim DataRange As Range
Dim cell As Range
Dim x As Long
Dim TotalTargets As Double
Dim lastrow As Long
lastrow = Cells(Rows.Count, "D").End(xlUp).Row
TotalTargets = WorksheetFunction.Max(Columns("D"))
Set DataRange = Sheets("Result").Range("D:I" & lastrow)
For Each cell In DataRange.Cells
ReDim Preserve myArray(x)
myArray(x) = cell.Value
x = x + 1
Next cell
End Sub
答案
错误的类型:
Set DataRange = Sheets("Result").Range("D:I" & lastrow)
应该
Set DataRange = Sheets("Result").Range("D1:I" & lastrow)
或者Dx,其中x是你的第一行。
以上是关于VBA运行代码直到列范围的最后一行的主要内容,如果未能解决你的问题,请参考以下文章