设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 1776|回复: 5
打印 上一主题 下一主题

[窗体] 报表指定打印机,如何在VBA写入打印机名称

[复制链接]
跳转到指定楼层
1#
发表于 2023-2-14 14:00:11 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
各位老师,请问在窗体进行打印报表时候,如何使用VBA代码指定打印机名称进行打印,EXCEL中有一段代码是指定打印机名称进行直接打印
EXCEL VBA
ActiveWindow.SelectedSheets.PrintOut Copies:=IntCopy, Collate:=True, ActivePrinter:="你需要指定的打印机"
Access VBA如何写呢?请看看,谢谢
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
 楼主| 发表于 2023-2-14 14:10:03 | 只看该作者
公司网络打印机有12个,每次打印预览后进行选择,太麻烦了,想在窗体打印命令按钮里面将指定的打印机名称写入,,然后进行直接打印.不知可不可以,谢谢
3#
发表于 2023-2-14 16:37:22 | 只看该作者
你把某一个要用的打印机设定位默认打印机,就可以了
4#
 楼主| 发表于 2023-2-15 13:43:24 | 只看该作者
gaofei186 发表于 2023-2-14 16:37
你把某一个要用的打印机设定位默认打印机,就可以了

gaofei186老师,我想使用VBA在不修改默认打印机的基础上进行打印,,请问如何做到呢?
5#
发表于 2023-2-15 14:09:12 | 只看该作者
您可以使用 VBA 代码来指定打印机名称并直接打印。
以下是一个示例代码,假设您有一个名为 "cmdPrint" 的打印命令按钮和一个名为 "cboPrinter" 的下拉列表框,其中列出了您要使用的所有打印机的名称。请根据您的需要进行修改。
在这个示例代码中,您需要将 "YourReportName" 替换为您要打印的报表名称。
当用户单击 "cmdPrint" 按钮时,代码将从下拉列表框 "cboPrinter" 中获取选择的打印机名称。如果用户没有选择打印机,则会弹出一个消息框提示用户选择打印机,并退出过程。然后,代码将打开报表,设置所选打印机,打印整个报表,关闭报表并结束过程。
请注意,打印机名称必须与 Windows 操作系统中列出的完全相同。如果打印机名称不正确,代码将无法打印。

Private Sub cmdPrint_Click()
    Dim selectedPrinter As String
    selectedPrinter = Me.cboPrinter.Value
   
    ' 检查是否已选择打印机
    If selectedPrinter = "" Then
        MsgBox "Please select a printer."
        Exit Sub
    End If
   
    ' 为报表设置打印机
    DoCmd.OpenReport "YourReportName", acViewNormal
    Reports("YourReportName").Printer = selectedPrinter
   
    ' 打印报告
    DoCmd.PrintOut acPrintAll
   
    ' 关闭报告
    DoCmd.Close acReport, "YourReportName"
End Sub

评分

参与人数 1经验 +4 收起 理由
yanwei82123300 + 4 (V币)优秀提问、答复(1-2分)

查看全部评分

6#
 楼主| 发表于 2023-2-15 14:11:10 | 只看该作者
huanghyd 发表于 2023-2-15 14:09
您可以使用 VBA 代码来指定打印机名称并直接打印。
以下是一个示例代码,假设您有一个名为 "cmdPrint" 的 ...

huanghyd老师谢谢您的帮助,
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-4-28 13:29 , Processed in 0.110412 second(s), 30 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表