繁体   English   中英

如何使用C#计算打印预览Excel中的打印页数?

[英]How To Count The Number Of Printed Pages In Print Preview Excel with C#?

我想知道预先打印的总页数。 打印前要计算打印页数,我会去打印查看计算数量。 单击文件-> 打印,然后我可以查看打印的页数。 在此处输入图片说明

我可以数出一张纸的打印页数(上图中为 2)。 但是当我将打印设置更改为“整个工作簿”时,打印预览中的页数会发生变化。 我不知道如何获得打印页数。 在此处输入图片说明

Excel.Worksheet esh1 = oWB.Worksheets["List of holidays"];
MessageBox.Show(esh1.PageSetup.Pages.Count.ToString());

你能帮我解决这个问题吗。 谢谢你。

正如艾哈迈德·阿卜杜勒哈米德 (Ahmed Abdelhameed) 评论的那样,您可以尝试这样做,但有一个区别 - 仅对可见工作表计算页数:

            Excel.Workbook xlWB = Globals.ThisAddIn.Application.ActiveWorkbook; // or other way you get an instance of the workbook 
            long pagesCount = 0;

            foreach (Excel.Worksheet xlSht in xlWB.Sheets)
            {
                if (xlSht.Visible == Excel.XlSheetVisibility.xlSheetVisible)
                {
                    pagesCount += xlSht.PageSetup.Pages.Count;
                }
            }

            MessageBox.Show(pagesCount.ToString());

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM