Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: VBA für Outlook

VBA für Outlook
26.01.2023 12:18:31
Thomas
Hallo
ich hatte schon einen Code im Netz gefunden, der allerdings kein Erfolg brachte.
Ich bin in einem Verteiler, aus dem, warum auch immer, man nicht herausgenommen werden kann.
Ich möchte daher gern, das wenn von Person "Peter" ein Termineinladung bekomme, das dieser ohne Antwort senden abgelehnt wird.
Manchmal bekomme ich auch einen Termin im Auftrag von "Peter", auch hier ablehnen ohne Antwort.
Hat jemand evtl. einen solchen Code, oder weiß, warum der untere nicht funktioniert.
Ich weiß, das dies ein Excel Forum ist, aber vielleicht kann trotzdem jemand helfen.
Danke schön.
gefunden hatte ich mal diesen Code:
Sub CheckMailForMeetingRequest(itm As Object)
    Dim app As AppointmentItem, mItem As MeetingItem
    If itm.Class = olMeetingRequest And (itm.SenderName = "Peter" Or itm.SenderName = "Klaus") Then
        Set app = itm.GetAssociatedAppointment(False)
        If Not app Is Nothing Then
            Set mItem = app.Respond(olMeetingDeclined, True, False)
            mItem.Send
        End If
        itm.Delete
    End If
End Sub
Private Sub Application_NewMailEx(ByVal EntryIDCollection As String)
    Dim arrEntryIDs As Variant, objItem As Object
    arrEntryIDs = Split(EntryIDCollection, ",")
    For i = 0 To UBound(arrEntryIDs)
        Set objItem = Application.Session.GetItemFromID(arrEntryIDs(i))
        CheckMailForMeetingRequest objItem
    Next
End Sub
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA für Outlook
26.01.2023 13:04:06
ede
Hallo Thomas,
verwende in Outlook die "Regeln und Benachrichtigungen", da kannst Du es per Assistenz einstellen.
Gruss
Ede
AW: VBA für Outlook
26.01.2023 13:28:38
Thomas
Hallo Ede
Die Funktion Assitenz konnte ich nicht finden.
Das eine ist ja, die Email zu löschen, aber der Eintrag im Kalender, soll ja auch verschwinden.
Gruß
Thomas
Anzeige
AW: VBA für Outlook
27.01.2023 19:48:18
Thomas
Ohh, prima.
weißt du evtl. auch, wie man den Code ergänzt, wenn man zwei oder sogar drei Absender eintragen möchte?
Private Sub Application_NewMailEx(ByVal EntryIDCollection As String)
Dim xEntryIDs
Dim xItem
Dim i As Integer
Dim xMeeting As MeetingItem, xMeetingDeclined As MeetingItem
Dim xAppointmentItem As AppointmentItem
On Error Resume Next
xEntryIDs = Split(EntryIDCollection, ",")
For i = 0 To UBound(xEntryIDs)
    Set xItem = Application.Session.GetItemFromID(xEntryIDs(i))
    If xItem.Class = olMeetingRequest Then
        Set xMeeting = xItem
        xMeeting.ReminderSet = False
        If VBA.LCase(xMeeting.SenderEmailAddress) = VBA.LCase("yy@addin99.com") Then 'Specify the person you need
            Set xAppointmentItem = xMeeting.GetAssociatedAppointment(True)
            'xAppointmentItem.ReminderSet = False
            'Set xMeetingDeclined = xAppointmentItem.Respond(olMeetingDeclined)
            'xMeetingDeclined.Body = "Dear, " & vbCrLf & _
                                    "I am not at office. " & vbCrLf & _
                                    "I'm sorry that I will not attend the meeting invitations."
            'xMeetingDeclined.Send
            xAppointmentItem.Delete
            xMeeting.Delete
        End If
    End If
Next
End Sub

Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige