VBA代码将页面打印缩放在一页纸上打印输出

趣课程
趣课程
管理员
755
文章
0
粉丝
信息科技评论106阅读模式

Excel会自动降低打印缩放百分比来对其进行调整,以便刚好能打印在一页上。然而,它不会增加缩放百分比使其刚好打印为一页。例如,如果在A4纸上刚好能打印在一页上,但你希望它在A3纸上也刚好打印在一页上。以下程序可以帮助实现这一需求。

VBA代码如下:文章源自趣课程-https://www.qukecheng.com/538.html

'这个宏将缩放比例增加到适合%(缩放%),
'直到页面填充当前选定的页面大小
Sub FillToOnePage()
 '用于捕获当前视图的变量
 Dim CurrView
 '捕获当前视图以便我们能够在结束时恢复
 CurrView = ActiveWindow.View

 '在当前工作表中使用PageSetup命令
 With ActiveSheet.PageSetup
   '以100%开始
   .Zoom = 100
   '停止屏幕更新以加速程序的执行
   Application.ScreenUpdating = False
   '.Pages.Count在更改打印视图时更新
   '400是缩放%的极限
   '当页数超过1或者缩放%达到400时Do loop停止
   Do Until .Pages.Count > 1 Or .Zoom = 400
     '设置视图为正常
     ActiveWindow.View = xlNormalView
     '增加缩放%
     .Zoom = .Zoom + 1
     '改变视图为分页预览
     '迫使打印页数重新计算
     ActiveWindow.View = xlPageBreakPreview
   Loop
   '如果缩放%被改变(不等于100)则减少缩放%使打印页面返回1
   If .Zoom <> 100 Then
     .Zoom = .Zoom - 1
   End If
   '恢复程序开始时的视图
   ActiveWindow.View = CurrView
   '关闭分页预览
   ActiveSheet.DisplayPageBreaks = False
 End With
 '恢复屏幕更新
 Application.ScreenUpdating = True
End Sub

 文章源自趣课程-https://www.qukecheng.com/538.html 文章源自趣课程-https://www.qukecheng.com/538.html

文章末尾固定信息

weinxin
我的微信
微信号已复制
我的微信
微信扫一扫
 
趣课程
  • 本文由 趣课程 发表于2024 年 12 月 4 日 05:18:11
  • 转载请务必保留本文链接:https://www.qukecheng.com/538.html

发表评论