[Solved] Set ‘Fit All Columns on One Page’ via Excel JavaScript API


The Office 365 Online Automate Scripts helped get me on the right path.

Docs:

https://learn.microsoft.com/en-us/javascript/api/excel/excel.pagelayoutzoomoptions?view=excel-js-preview

https://learn.microsoft.com/en-us/javascript/api/excel/excel.pagelayout?view=excel-js-preview#excel-excel-pagelayout-zoom-member

Code:

await Excel.run(async (context) => {
    var ws = context.workbook.worksheets.getActiveWorksheet();
    var PageLayoutZoomOptions_Obj = {
        'horizontalFitToPages': 1,
        'verticalFitToPages': 0,
    }
    ws.pageLayout.zoom = PageLayoutZoomOptions_Obj
    await context.sync();
});

Note: I had issues using/including scale so I just left it out.

solved Set ‘Fit All Columns on One Page’ via Excel JavaScript API