Я пытаюсь открыть файл и затем найти последнюю строку, все работает до этой строки:
Set SourceSheet = crWorkbook.Worksheets ("Форма запроса наличных")
Это дает мне ошибку Subscript вне диапазона, и я не могу понять, почему ...
Dim filter As String
Dim caption As String
Dim crFilename As String
Dim crWorkbook As Workbook
Dim crMasterWorkbook As Workbook
' make weak assumption that active workbook is the target
Set crMasterWorkbook = Application.ActiveWorkbook
With Application.FileDialog(msoFileDialogFilePicker)
.AllowMultiSelect = False
.InitialFileName = "*Cash Report*.xlsx"
.Show
crFilename = .SelectedItems(1)
End With
' get the cash request workbook
'caption = "Please Select an input file "
'crFilename = Application.GetOpenFilename(filter, , caption)
Set crWorkbook = Application.Workbooks.Open(crFilename, UpdateLinks = False)
' copy data from source to target workbook
Dim targetSheet As Worksheet
Set targetSheet = crMasterWorkbook.Worksheets("Master Cash Request Log")
Dim SourceSheet As Worksheet
Set SourceSheet = crWorkbook.Worksheets("Cash Request Form")
'Define last row
target_lastrow = targetSheet.Range("A1").CurrentRegion.Rows.Count