温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

excel创建宏打印

发布时间:2020-07-04 21:48:12 来源:网络 阅读:1817 作者:Chinayu2014 栏目:开发技术

保存单元格数据,并打印表格,按alt+F11调出VBA开发工具,添加模块。

Sub PrintPass()
'打印票据
Sheets("打印合格证").Select
ActiveWindow.SelectedSheets.PrintOut '调用打印命令打印当前页
'保存数据
With Sheets("记录")
x = .Range("a65536").End(xlUp).Row + 1 '取得“记录”表中最后一个空行的行号(即写入位置)
'For i = 0 To 2 '商品信息分三行,为了简化代码,使用循环语句
.Cells(x, 1) = [a1] '客户
.Cells(x, 2) = [b1] '长度
.Cells(x, 3) = [c1] '日期
'Next
End With

'清除数据(单据编号E2格与有公式的单元格不用清除)
Range("a1").ClearContents
'最后让票据的号码自动加1
's = Range("e2") '收据上的当前序号在E2单元格
'Range("e2") = Left(s, 2) & Right("0000" & Right(s, 4) + 1, 4) '打印完毕后让序号加一(编号的左两位是字符,右四位是数字)
'MsgBox "打印并保存完毕", , "提示"
End Sub

在A1单元格中回车调用模块函数

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

'Application.EnableEvents = False
    Application.OnKey "{Enter}"
    If Target.Count = 1 And Target.Address = "$A$1" Then
       If i = 0 Then
          i = 2
          Exit Sub
       End If
       
       bianhao = CStr(Range("A1").Value)
       ret = MsgBox("要打印" + bianhao + "合格证吗?", vbExclamation + vbYesNo, "提示")
       If ret = 6 Then
            Application.OnKey "{Enter}", "printpass"
            Call PrintPass
       End If
       
    Else
       i = 0
    End If
'Application.EnableEvents = True

End Sub


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI