excel 打印 VBA 问题

PrivateSubWorkbook_BeforePrint(CancelAsBoolean)Sheets(1).Range("a1").Value=Sheets(1).... Private Sub Workbook_BeforePrint(Cancel As Boolean)
Sheets(1).Range("a1").Value = Sheets(1).Range("a1").Value + 1
End Sub

我设置的是打印一次单元格A1+1
然后我发现为什么是单元格A1+1后才打印.
比如说我打印的时候看到的A1单元格内数字是1 然后按了打印后打出来的单元格数字变成2了.
beforeprint打印之前执行A1+1
追问那请问怎么能打印之后执行A1+1
怎么写。感谢
展开
 我来答
2724421
2013-03-08 · TA获得超过2493个赞
知道大有可为答主
回答量:1551
采纳率:71%
帮助的人:955万
展开全部
Private Sub Workbook_BeforePrint(Cancel As Boolean)
Application.EnableEvents = False '不触发BeforePrint事件
ActiveSheet.PrintOut
Sheets(1).Range("a1").Value = Sheets(1).Range("a1").Value + 1
Application.EnableEvents = True
Cancel = True '取消打印
End Sub
追问
有用.就是这个选择打印机那里怎么没有了?能不能指定打印机号?
追答
你可以用
dim pnt as printer
for each pnt in printers

next

遍历打印机,
用 Application.ActivePrinter=打印机的名字
选择
具体代码你自己写吧
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式