Excel VBA экспортирует каждый лист в одну страницу PDF

Используется std::vector<>, потому что std::vector<> обычно выделяет больше памяти, чем objects в vector<>.

0
задан Pᴇʜ 22 February 2019 в 07:31
поделиться

3 ответа

Попробуй это так !!

' Save seperate sheets as seperate PDF files
    Sub SaveAsPDF()
    Dim CurWorksheet As Worksheet
        For Each CurWorksheet In ActiveWorkbook.Worksheets
            CurWorksheet.ExportAsFixedFormat Type:=xlTypePDF, _
                Filename:=Application.ActiveWorkbook.Path & "\" & CurWorksheet.Name, _
                Quality:=xlQualityStandard, _
                IncludeDocProperties:=True, _
                IgnorePrintAreas:=False, _
                OpenAfterPublish:=False
        Next CurWorksheet
    End Sub


' Save All Sheets to one single PDF File
Sub AllSheetsToOnePDF()
ThisWorkbook.Sheets(Array("Sheet1", "Sheet2", "Sheet3")).Select
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
    Application.ActiveWorkbook.Path & "\" & "All.pdf",
    Quality:=xlQualityStandard, 
    IncludeDocProperties:=True, _
    IgnorePrintAreas:=False, 
    OpenAfterPublish:=True
End Sub
0
ответ дан ryguy72 22 February 2019 в 07:31
поделиться

Если вы хотите, чтобы это было на 1 странице, вам необходимо скопировать все данные с каждого рабочего листа на 1 новый лист, очистить область печати и затем установить новую область печати. затем установите его для печати по размеру страницы

0
ответ дан jonrizz 22 February 2019 в 07:31
поделиться

Установите область печати, найдя конечную точку ваших данных на каждом листе. Хорошая документация здесь . Затем используйте ExportAsFixedFormat, убедившись, что IgnorePrintAreas по-прежнему установлен на False.

0
ответ дан healey 22 February 2019 в 07:31
поделиться
Другие вопросы по тегам:

Похожие вопросы: