通过ActiveCell嵌入式值的VBA宏循环

时间:2018-09-25 14:29:58

标签: excel vba loops

我正在尝试寻找一种更好的解决方案,以动态地遍历具有来自数据库连接的值的动态列表的单元格。单元格“ B3”具有要循环浏览的项目的下拉列表,并且当选择了特定项目时,它将刷新工作表以反映该项目的值(从表中选择*,其中Item = X)。项目数量每季度更改一次,因为项目是我们评估的属性列表。有时有50个项目,有时有5个项目。如何修改此代码,这样就不必进入宏并更新For i = 1至49循环?我想要的是,它既可以查询项目列表并找到项目数,也可以执行Do While循环并遍历所有值直到最后一个。

Dim strfindrow As String
For i = 1 To 49
    Range("B3").Select
    strfindrow = "=DATA_PROPERTY!R[" + Trim(Str(i - 2)) + "]C[-1]"
    ActiveCell.FormulaR1C1 = strfindrow
    Range("B3").Select
    ActiveWindow.SelectedSheets.PrintOut Copies:=1
Next
End Sub

1 个答案:

答案 0 :(得分:0)

要查找最后一行,也请通过以下链接进行:Error in finding last used cell in VBA

With ThisWorkbook.Worksheets("sheet name")
    LastRow = .Cells(.Rows.Count, "A").End(xlUp).Row ' if col is "A"
End With