我有以下代码无效。
Private Sub PrintNew_Click()
If Sheets("New").Range("email").Value = 0 Then MsgBox "Email Address Needs to be Completed", vbInformation
If response = vbCancel Then Exit Sub
If MsgBox("Do you really want to print?", vbOKCancel) = vbOK Then Sheets("New").PrintOut copies:=1, Collate:=True
Sheets("Disclosure").PrintOut copies:=1, Collate:=True
If reponse = vbCancel Then Exit Sub
End Sub
除了我点击取消选项进行打印之外,它还可以打印。
请告知需要修改的内容。
先谢谢你的帮助。 约翰戴维斯
答案 0 :(得分:3)
您的response
拼写错误。在任何情况下,我都会在打印之前放置 之类的内容,因为它更加惯用并且需要少一个条件语句,因为您可以在之后打印出来。 。 :
If MsgBox("Do you really want to print?", vbYesNo) <> vbYes Then Exit Sub
另外,正如评论中Bathsheba所述,您应该考虑使用Option Explicit
来防止像您这样的语法错误。启用Option Explicit
后,必须使用Dim
/ ReDim
语句将所有变量声明为显式。结果,尝试使用未声明的变量就像在此处一样,将产生编译时错误并明确指示代码中的错误。