我一直試圖通過Access來設置outlook任務項,並用自定義消息替換運行時錯誤440。 某個字段(me.dueBy)爲空時會彈出此錯誤。 目前我的代碼已經成功創建了具有dueBy數據記錄的任務,但是當我點擊沒有截止日期的記錄按鈕時,則沒有任何反應。沒有消息框,沒有錯誤,沒有。訪問vba用自定義消息替換運行時錯誤
我只需要一個消息框告訴我,當該字段爲空時,我需要一個到期日期來設置任務。
Private Sub Command15_Click()
Dim db As DAO.Database
Dim rs As DAO.Recordset
Dim DataErr As Integer
Dim Response As Integer
On Error GoTo err_handler
Set db = CurrentDb
Set rs = db.OpenRecordset("tblActions")
Set outLookApp = CreateObject("outlook.application")
Set OutlookTask = outLookApp.CreateItem(olTaskItem)
With OutlookTask
.Subject = "Action Due Date: " & Me.dueBy & " for Contract ID " & Me.contractID
.Body = "Due date for Action: < " & Me.actionNote & " > is " & Me.dueBy & "."
.ReminderSet = True
.ReminderTime = Me.dueBy + TimeValue("8:00:00 AM")
.Save
End With
MsgBox "Action Task has been set in Outlook successfully."
exit_err_handler: Exit Sub
err_handler:
If DataErr = 440 Then
Response = acDataErrContinue
MsgBox "Due date is required.", vbOKOnly, "Due date Error"
End If
Resume exit_err_handler
Set rs = Nothing
Set db = Nothing
End Sub
我認爲你需要在Outlook任務中設置另一個錯誤處理程序,因爲從Outlook的錯誤不會傳回。 – Minty