Я борюсь со скрытием листов.
Я использовал два набора кода:
Sub hidesheets()
Sheets("Materials - Specifications").Visible = False
Sheets("Fibre drop release sheet").Visible = False
End Sub
И затем
Sub RAtoPDF()
Call hidesheets
Dim sh As Worksheet, sh2 As Worksheet
Dim ArraySheets() As String
Dim custom_name As String
Dim x As Variant
For Each sh In ActiveWorkbook.Worksheets
If sh.Tab.ColorIndex = 33 Then
'Sheets("Materials - Specifications").Visible = False
ReDim Preserve ArraySheets(x)
ArraySheets(x) = sh.Name
x = x + 1
End If
Next sh
Sheets(ArraySheets).Select
custom_name = "RA_" & ThisWorkbook.Name & ".pdf"
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
ThisWorkbook.Path & "\" & custom_name, _
Quality:=xlQualityStandard, IncludeDocProperties:=True, _
IgnorePrintAreas:=False, OpenAfterPublish:=True
Sheets("Frontsheet").Select
End Sub
Я получаю:
Не удалось выбрать метод класса листов
с отладчиком, указывающим на:
Sheets(ArraySheets).Select
Я пробовал эту строку без внешнего макроса, но ошибка та же.
Опция XlVeryhidden
также не работает.