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