У меня есть лист Excel, который генерирует комбинированную диаграмму для отображения данных о тенденциях в 49 рабочих ячейках производства. Исходные данные диаграммы основаны на ячейках, которые содержат большое количество формул (центр изображения ниже). Я построил лист так, чтобы пользователь выбирал рабочую ячейку из раскрывающегося списка в A5, и все формулы и графики автоматически обновлялись. Источником для проверки данных A5 является столбец в таблице, найденной на другом листе. Я настроил этот лист с областью печати вокруг графика.
Прямо сейчас я могу использовать следующий код, чтобы пройтись по всем графикам и распечатать каждый на одной странице PDF:
Sub TestLoopMacro()
Sheets("My Sheet").Select
'SOURCE FOR TIMER CODE: www.TheSpreadsheetGuru.com/the-code-vault
Dim StartTime As Double
Dim SecondsElapsed As Double
'Remember time when macro starts
StartTime = Timer
Dim Count As Integer
For Count = 2 To 50
Range("A5").Select
Range("A5").Value = Worksheets("Cells Sheet").Range("E" & Count)
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"H:\Some Path\Test Exports\" & Worksheets("Cells Sheet").Range("B" & Count) & ".pdf", Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
False
Next Count
'Determine how many seconds code took to run
SecondsElapsed = Round(Timer - StartTime, 2)
'Notify user in seconds
MsgBox "This code ran successfully in " & SecondsElapsed & " seconds", vbInformation
End Sub
Я хотел бы иметь возможность печатать графики для всех 49 ячеек в одном PDF. Этот код успешно создает 49 PDF-файлов с уникальными графиками.
Есть ли способ экспортировать их в один и тот же PDF-файл с помощью VBA вместо их последующего слияния с Adobe/ аналогичным? Я нашел опубликованные вопросы о попытках сделать похожие вещи, но они включали области печати, экспортируемые из нескольких листов (в отличие от нескольких экземпляров одного листа).