Проверил, работает. Выстрадался окончательный вариант:
X++:
#define.xlDialogPageSetup(7)
static void Job212(Args _args)
{
ComExcelDocument_RU excel = new ComExcelDocument_RU();
COM doc;
COM app;
COM worksheet;
COM pageSetup;
COM temp;
int fitToPagesWide = 5; // страниц в ширину
int fitToPagesTall = 0; // страниц в высоту, если 0, то поле пустое
COMVariant cvZoom = COMVariant::createFromBoolean(false);
COMVariant cvWide = fitToPagesWide ? COMVariant::createFromInt( fitToPagesWide )
: COMVariant::createFromBoolean( false );
COMVariant cvTall = fitToPagesTall ? COMVariant::createFromInt( fitToPagesTall )
: COMVariant::createFromBoolean( false ) ;
;
excel.newFile();
doc = excel.getComDocument();
app = doc.Application();
worksheet = app.ActiveSheet();
pageSetup = worksheet.PageSetup();
pageSetup.Zoom(cvZoom);
pageSetup.FitToPagesWide(cvWide);
pageSetup.FitToPagesTall(cvTall);
// это для демонстрации того, что получается
temp = app.Dialogs();
temp = temp.Item(#xlDialogPageSetup);
temp.Show();
}