You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Application.CommandBars.ExecuteMso指定打印页并打开Excel默认预览?

实现带指定页码的Excel官方打印预览

可以通过先配置Excel的打印页码范围,再调用官方打印预览命令的方式实现两者功能结合,具体VBA方案如下:

  • 先设置目标打印页码范围,比如指定打印第2到第5页:
    ' 清空打印区域(若需打印整个工作表),也可指定具体区域如 "$A$1:$D$20"
    ActiveSheet.PageSetup.PrintArea = ""
    ' 设置起始页码
    ActiveSheet.PageSetup.PrintFrom = 2
    ' 设置结束页码
    ActiveSheet.PageSetup.PrintTo = 5
    
  • 调用官方打印预览命令:
    Application.CommandBars.ExecuteMso ("PrintPreviewAndPrint")
    

完整可运行代码

Sub PrintPreviewWithSpecifiedPages()
    ' 自定义起始和结束页码
    Dim startPage As Integer, endPage As Integer
    startPage = 2
    endPage = 5
    
    ' 应用打印页码配置
    With ActiveSheet.PageSetup
        .PrintFrom = startPage
        .PrintTo = endPage
        .PrintArea = "" ' 替换为具体单元格区域可指定打印范围
    End With
    
    ' 打开官方原生打印预览窗口
    Application.CommandBars.ExecuteMso ("PrintPreviewAndPrint")
End Sub

说明:

  • 执行代码后打开的是Excel原生官方打印预览窗口,且默认加载你指定的页码范围
  • 若需针对整个工作簿设置,将代码中的ActiveSheet替换为ActiveWorkbook即可

内容的提问来源于stack exchange,提问作者Júlio César Pedrini

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.16 04:54:51