如何将printarea调整为一张纸
我在一张纸上定义了一个打印区域并将其打印出来。 但是这个面积比一张纸大,所以会打印成4页。 我想在一个页面中包含所有的内容。 所以我试过这个代码:
Sub PrintTable() With ActiveWorkbook.Sheets("myTable").PageSetup .PrintArea = "$A$1:$L$55" .FitToPagesWide = 1 .FitToPagesTall = 1 .PrintErrors = xlPrintErrorsDisplayed End With End Sub
但是它不起作用,我不知道要纠正哪个部分。 我用'录制macros',也许我已经删除了一些重要的行。 所以,如果你有一些想法,请留下一个笔记。
我只是自己试了一下,这个工程:
Application.PrintCommunication = False With ActiveSheet.PageSetup .FitToPagesWide = 1 .FitToPagesTall = 1 End With Application.PrintCommunication = True
没有设置
Application.PrintCommunication
假的和真的,这是行不通的。 你能试试吗?
编辑根据这个解释 , Zoom
必须先被设置为False
。 尝试:
.Zoom = False .FitToPagesTall = 1 .FitToPagesWide = 1
代替现在的两个.FitToPages
行。
原始答案
通过这个论坛post ,请尝试
.Zoom = False .FitToPagesWide = 1 .FitToPagesTall = False
要么
.Zoom = False .FitToPagesTall = 1 .FitToPagesWide = False
代替现在的两个.FitToPages
行。