Is it possible to adjust page setup options in Excel with MATLAB?
6 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Calabrese
am 15 Jun. 2017
Kommentiert: enrico maggiolini
am 21 Okt. 2024
If so, I would like to access Print, Page Setup, set to Landscape, and Fit to 1 pages wide and 100 pages tall. Then print to PDF with the same file name and delete the original *.xlsx file.
0 Kommentare
Akzeptierte Antwort
Jayaram Theegala
am 19 Jun. 2017
You can use the "actxserver" command in MATLAB to create Excel COM object and then use the functions exported by the COM object to Print, Page Setup. To find more information about the Excel COM functions, click on the following URL:
For more information about "actxserver" command and an example script to see how to use Excel COM object with MATLAB, click on the following URL:
You might find the following MATLAB script helpful to get started:
e = actxserver('Excel.Application');
e.Visible = 1;
e.Workbooks.Open('<your path to Excel file>');
%Print out Sheet 1 with default printer and settings
e.Worksheets.Sheets('Sheet1').PrintOut
delete('<your path to Excel file>');
Also, if you just want to save the file as PDF, you can use the Workbook's "SaveAs" function. To find more information about this function, click on the following URL:
Weitere Antworten (1)
Meng Li Gan
am 1 Feb. 2019
I not sure is it the answer that you need but i just sharing here what I did for page setup.
excel = actxserver('Excel.Application');
excel.Visible = 1;
workbook = excel.Workbooks.Open('filename');
worksheet = workbook.Worksheets.Item(1); % Choose desired sheet
worksheet.PageSetup.Orientation = 2; %to set the page to landscape (if portrait change the 2 to 1)
% if want to customize the margin, you need to convert the inch to point (1 inch = 72 point
worksheet.PageSetup.LeftMargin = 12.96;
worksheet.PageSetup.RightMargin = 36;
worksheet.PageSetup.TopMargin = 36;
worksheet.PageSetup.BottomMargin = 36;
worksheet.PageSetup.HeaderMargin = 36;
worksheet.PageSetup.FooterMargin = 36;
worksheet.PageSetup.Zoom = false; %zoom must set to false, otherwise FitToPagesWide will be ingnored
worksheet.PageSetup.FitToPagesWide = 1;
worksheet.PageSetup.FitToPagesTall = 100;
1 Kommentar
enrico maggiolini
am 21 Okt. 2024
With these options i have a PDF that is not A4, how to resize it properly?
thanks
Siehe auch
Kategorien
Mehr zu Spreadsheets finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!