Я получаю сообщение об ошибке «переменная объекта или блок-переменная не установлена» с приведенным ниже кодом. Код работал нормально, прежде чем я добавил в него вторую функцию. По сути, он берет данные из одной рабочей книги и вставляет их в другую рабочую книгу. Может кто-нибудь подсказать, пожалуйста, как это исправить, чтобы ошибка исчезла?
Вот строка с ошибкой: Set wv = w c .Sheets ("All Voucher Trips")
Dim SourceFolder As String, wb As Workbook, ws As Worksheet, rng1 As Range, wv As Worksheet, wc As Workbook ' The Dim keyword is short for Dimension. It is used to declare variables in VBA. Declare means we are telling VBA about a variable we will use later.
Set wb = GetWBName
Set ws = wb.Sheets("Vouchers with Trips")
Set wc = GetWCName
Set wv = wc.Sheets("All Voucher Trips")
strFileDir = ThisWorkbook.Path
SourceFolder = strFileDir
ws.UsedRange.Offset(1, 0).ClearContents
lr = wv.Cells(Rows.Count, 1).End(xlUp).Row
Set rng1 = wv.Range("A2:W" & lr)
rng1.Copy ws.Cells(Rows.Count, "A").End(xlUp).Offset(1, 0)
End Sub
Function GetWBName() As Workbook
Dim wb As Workbook
FileName = "220700"
For Each wb In Application.Workbooks
If wb.Name Like FileName & "*" Then
Set GetWBName = wb
Exit Function
End If
Next wb
End Function
Function GetWCName() As Workbook
Dim wc As Workbook
FileName = "VoucherActivity"
For Each wc In Application.Workbooks
If wc.Name Like "*" & FileName Then
Set GetWCName = wc
Exit Function
End If
Next wc
End Function