Я работаю над макросом, который копирует каждый лист и сохраняет его как отдельную книгу, но в какой-то момент в макросе мне нужно очистить пару ячеек в строке Z, а затем отфильтровать столбец Z, чтобы удалить нули. Я очень новичок в VBA, поэтому, пожалуйста, извините за уродливый код.
Макрос, который у меня есть, будет работать для разделения и сохранения файлов, но я получаю сообщение об ошибке 1004. Ошибка приложения или объекта.
Я искал другие сообщения часами и до сих пор не могу понять. Любая помощь приветствуется.
Dim FileExtStr As String
Dim FileFormatNum As Long
Dim Sourcewb As Workbook
Dim Destwb As Workbook
Dim sh As Worksheet
Set sh = Sheets("Table of Contents")
Dim DateString As String
Dim FolderName As String
Dim filterRow As Integer
With Application
.ScreenUpdating = False
.EnableEvents = False
.Calculation = xlCalculationManual
End With
Set Sourcewb = ActiveWorkbook
Set sh = ActiveSheet
'Create new folder to save the new files in
DateString = Format(Now, "yyyy-mm-dd hh-mm-ss")
FolderName = Sourcewb.Path & "\" & "Department Expenses - Split"
MkDir FolderName
'Copy every visible sheet to a new workbook
For Each sh In Sourcewb.Worksheets
filterRow = sh.Range("Z" & Rows.Count).End(x1Up).Row 'This is the line giving me problems
ActiveSheet.Next.Select
Range("Z9").Select
Selection.ClearContents
Range("Z12").Select
Selection.ClearContents
Range("Z14").Select
Selection.ClearContents
Range("Z77").Select
Selection.ClearContents
Range("Z100").Select
Selection.ClearContents
sh.Range(filterRow).AutoFilter Field:=26, Criteria1:="<>0"