Axapta V3 - 如何从 x++ 访问 worksheet.pagesetup 属性

发布于 2024-08-19 00:03:48 字数 115 浏览 4 评论 0原文

有谁知道如何通过 COM 从 x++ 代码访问 Excel 工作表的 PageSetup 属性。我可以执行自定义报告所需的所有格式设置,但无法访问 PageSetup 对象。

任何指示/建议表示赞赏。

Does anyone know how to access the PageSetup properities of an Excel worksheet via COM from x++ code. I can do all the formatting I require for a custom report but can't access PageSetup object.

Any pointers / suggestions appreciated.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

碍人泪离人颜 2024-08-26 00:03:48

http://axforum.info/forums/showthread.php?p=209139#帖子209139

#define.xlDialogPageSetup(7)
static void Job212(Args _args)
{
    COM doc = ; // HERE IS EXCEL DOCUMENT COM OBJECT
    COM app;
    COM worksheet;
    COM pageSetup;
    COM temp;

    int fitToPagesWide = 5; 
    int fitToPagesTall = 0; 

    COMVariant cvZoom = COMVariant::createFromBoolean(false);
    COMVariant cvWide = fitToPagesWide ? COMVariant::createFromInt( fitToPagesWide ) 
                                       : COMVariant::createFromBoolean( false );
    COMVariant cvTall = fitToPagesTall ? COMVariant::createFromInt( fitToPagesTall )
                                       : COMVariant::createFromBoolean( false )    ;
    ;
    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();

http://axforum.info/forums/showthread.php?p=209139#post209139

#define.xlDialogPageSetup(7)
static void Job212(Args _args)
{
    COM doc = ; // HERE IS EXCEL DOCUMENT COM OBJECT
    COM app;
    COM worksheet;
    COM pageSetup;
    COM temp;

    int fitToPagesWide = 5; 
    int fitToPagesTall = 0; 

    COMVariant cvZoom = COMVariant::createFromBoolean(false);
    COMVariant cvWide = fitToPagesWide ? COMVariant::createFromInt( fitToPagesWide ) 
                                       : COMVariant::createFromBoolean( false );
    COMVariant cvTall = fitToPagesTall ? COMVariant::createFromInt( fitToPagesTall )
                                       : COMVariant::createFromBoolean( false )    ;
    ;
    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();
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文