Vba ma访问:sendobject出错返回表单
我有一个没有问题的数据库,但是当用户退出电子邮件而不是通过电子邮件发送报告时,会出现一个错误。现在代码显示:Vba ma访问:sendobject出错返回表单,vba,ms-access,Vba,Ms Access,我有一个没有问题的数据库,但是当用户退出电子邮件而不是通过电子邮件发送报告时,会出现一个错误。现在代码显示: DoCmd.SendObject acSendReport, "AUS_Main", acFormatPDF, "heather@gmail.com", , , _ "AUS Checklist and Orders", "My AUS checklist and orders are attached." DoCmd.Quit acQuitSaveAll On Er
DoCmd.SendObject acSendReport, "AUS_Main", acFormatPDF, "heather@gmail.com", , , _
"AUS Checklist and Orders", "My AUS checklist and orders are attached."
DoCmd.Quit acQuitSaveAll
On Error GoTo Trap
Leave:
On Error GoTo 0
Exit Sub
Trap:
If Err.Number <> 2501 Then MsgBox Err.Description, vbCritical
Resume Leave
End Sub
DoCmd.SendObject acSendReport,“AUS_Main”,acFormatPDF,“heather@gmail.com", , _
“澳大利亚检查表和订单”,“我的澳大利亚检查表和订单随附。”
DoCmd.退出收购所有
关于错误跳转陷阱
离开:
错误转到0
出口接头
陷阱:
如果错误号为2501,则MsgBox错误说明,vbCritical
复假
端接头
我希望程序返回到最后一个表单“15_End”,如果用户退出而不发送,允许他们在意识到报告不正确时进行更改。如果他们确实发送,我希望它按原样继续,并退出数据库。确保VBE配置为在未处理错误时中断 工具>>选项>>常规>>错误捕获 然后只需管理方法中的2501-操作取消错误:
Sub Whatever()
On Error GoTo Trap
With DoCmd
.SendObject acSendReport, "AUS_Main", acFormatPDF, "heather@gmail.com", , , _
"AUS Checklist and Orders", "My AUS checklist and orders are attached."
.Quit acQuitSaveAll
End With
Leave:
On Error GoTo 0
Exit Sub
Trap:
If Err.Number <> 2501 Then MsgBox Err.Description, vbCritical
Resume Leave
End Sub
Sub-where()
关于错误跳转陷阱
与DoCmd
.SendObject acSendReport,“AUS_Main”,acFormatPDF,“heather@gmail.com", , _
“澳大利亚检查表和订单”,“我的澳大利亚检查表和订单随附。”
.退出收购
以
离开:
错误转到0
出口接头
陷阱:
如果错误号为2501,则MsgBox错误说明,vbCritical
复假
端接头
看看这个:不太管用。如果我退出电子邮件,它仍然会弹出2501错误弹出框…当底部部分显示“继续离开”时,离开部分指示了什么?离开部分是程序的退出。如果发生错误,它将继续从错误处理程序退出。你能把完整的代码贴出来吗?代码对我有用。编辑问题以显示您的实际代码。这是否回答了您的问题?