У меня проблемы с массивами в vba. Мне удалось создать один массив, и затем я хотел бы передать значения этого массива в другой массив, но создание этого второго массива оказывается трудным, так как я получаю ошибку времени выполнения 424. Требуется объект.
Цель состоит в том, чтобы все последние строки, использованные в листах моего файла Excel, сохранялись в этом массиве. Вот мой код.
Sub Combinetables()
Application.Calculation = xlCalculationManual
Application.ScreenUpdating = False
Application.DisplayStatusBar = False
Application.EnableEvents = False
'Setting up Worksheet (tabs)
Dim wb As Workbook: Set wb = ThisWorkbook
Dim wsInputsList As Worksheet: Set wsInputsList = wb.Sheets("InputsTab")
'InputTabs sheet names
Dim shtName As String
' Row counters
Dim lastrowInputs As Long, i As Long, nshts As Long
lastrowInputs = wsInputsList.Cells(Rows.Count, 1).End(xlUp).Row
ReDim ws(1 To lastrowInputs) As Worksheet 'dim your array only once
'Assigning Sheet Names
For i = 1 To lastrowInputs
shtName = wsInputsList.Cells(i, 2).Value ' store current "possible" sheet name
Set ws(i) = wb.Sheets(shtName) ' update sheets array
Next
'Assigning Last Row Numbers
ReDim lastrowsTab(1 To lastrowInputs) As Range
For k = 1 To lastrowInputs
Set lastrowsTab(k) = ws(k).Cells(Rows.Count, 1).End(xlUp).Row
Next
End Sub```