Используется std::vector<>
, потому что std::vector<>
обычно выделяет больше памяти, чем objects
в vector<>
.
Попробуй это так !!
' 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
Если вы хотите, чтобы это было на 1 странице, вам необходимо скопировать все данные с каждого рабочего листа на 1 новый лист, очистить область печати и затем установить новую область печати. затем установите его для печати по размеру страницы
Установите область печати, найдя конечную точку ваших данных на каждом листе. Хорошая документация здесь . Затем используйте ExportAsFixedFormat
, убедившись, что IgnorePrintAreas
по-прежнему установлен на False
.