MailItem.BeforeDelete-Ereignis (Outlook)

Tritt ein, bevor ein Element (bei dem es sich um eine Instanz des übergeordneten Objekts handelt) gelöscht wird.

Syntax

Ausdruck. BeforeDelete (Item, Cancel)

Ausdruck Eine Variable, die ein MailItem-Objekt darstellt.

Parameter

Name Erforderlich/Optional Datentyp Beschreibung
Item Erforderlich Objekt Das Element, das gelöscht wird.
Cancel Erforderlich Boolean False, Wenn das Ereignis auftritt. Wenn die Ereignisprozedur dieses Argument auf True festgelegt wird, ist nicht abgeschlossen und das Element wird nicht gelöscht.

HinwBemerkungeneise

Damit dieses Ereignis ausgelöst wird, wenn eine E-Mail-Nachricht, Verteilerliste, Journaleintrag, Aufgabe, Kontakt oder Beitrag durch eine Aktion gelöscht werden, muss ein Inspektor geöffnet sein.

Das Ereignis tritt bei jedem Löschen eines Objekts ein.

Beispiel

Im folgenden Beispiel für Visual Basic für Applikationen (VBA) wird der Benutzer gefragt, ob das aktuell geöffnete Element gelöscht werden soll. Damit dieses Beispiel ausgeführt werden kann, benötigen Sie ein geöffnetes E-Mail-Element, das gelöscht werden kann. Wenn Sie auf No klicken, wird die Nachricht nicht gelöscht. Wenn dieses Ereignis abgebrochen wird, wird Microsoft Outlook eine Fehlermeldung angezeigt. Daher müssen Sie dieses Ereignis im Code zu erfassen. Eine Möglichkeit hierzu ist unten dargestellt. Der Beispielcode muss in einem Klassenmodul wie ThisOutlookSessionplatziert werden, und die DeleteMail() Prozedur sollte aufgerufen werden, bevor die Ereignisprozedur von Outlook aufgerufen werden kann.

Public WithEvents myItem As Outlook.MailItem 
 
 
 
Public Sub DeleteMail() 
 
 Const strCancelEvent = "Application-defined or object-defined error" 
 
 On Error GoTo ErrHandler 
 
 Set myItem = Application.ActiveInspector.CurrentItem 
 
 myItem.Delete 
 
 Exit Sub 
 
 
 
ErrHandler: 
 
 MsgBox Err.Description 
 
 If Err.Description = strCancelEvent Then 
 
 MsgBox "The event was cancelled." 
 
 End If 
 
 'If you want to execute the next instruction 
 
 Resume Next 
 
 'Otherwise it will finish here 
 
End Sub 
 
 
 
Private Sub myItem_BeforeDelete(ByVal Item As Object, Cancel As Boolean) 
 
 'Prompts the user before deleting an item 
 
 Dim strPrompt As String 
 
 
 
 'Prompt the user for a response 
 
 strPrompt = "Are you sure you want to delete the item?" 
 
 If MsgBox(strPrompt, vbYesNo + vbQuestion) = vbNo Then 
 
 'Don't delete the item 
 
 Cancel = True 
 
 End If 
 
End Sub

Siehe auch

MailItem-Objekt

Support und Feedback

Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.