Я пытаюсь скопировать и вставить из одной рабочей книги в другую рабочую книгу, но получаю ошибку метода автофильтра класса Range с ошибкой. Я обнаружил, что эта ошибка возникает, когда я не указываю свою конечную строку. Например, если мое поле для копирования заканчивается в строке 500, я должен точно установить диапазон (A2, AJ500). Однако эти данные (конец строки) можно менять каждый месяц. Это может быть AJ700, AJ600 и т. Д. Есть ли способ сделать мой диапазон (A2, End Row) и заставить макрос работать без ошибки Ошибка класса Range?
Пожалуйста, дайте мне знать, если вам не понятен мой вопрос. Спасибо.
Option Explicit
Sub Macro1()
Dim wb As Workbook, wbO As Workbook
Dim ws As Worksheet, wsO As Worksheet
Set wb = ThisWorkbook
Set ws = wb.Sheets("Copyingfrom")
Set wbO = Workbooks.Add("Output.xlsm")
With wbO
Set wsO = wbO.Sheets("OutputSheet")
ActiveSheet.AutoFilterMode = False
With ws.Range("A2:AJ500") --> this is the field that I want to run as something like (A2:end)
.AutoFilter Field:=36, Criteria1:="1"
.SpecialCells(xlCellTypeVisible).Copy
End With
wsO.Range("I3").PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _
xlNone, SkipBlanks:=False, Transpose:=False
End With
End Sub