Hallo liebe Forumgemeinde!
Ich möchte ein Makro schreiben, das AppointmentItems im Kalender farbig hinterlegt, je nachdem ob sie zugesagt oder abgesagt, usw. wurden.
Jetzt hab ich das Problem, dass für den Ersteller des Termins die Variable "ResponseStatus" immer gleich "1" ist.
Doch gerade für den Autor des Termins wäre es interessant, den Status des Termins abrufen zu können.
Kann man da irgendwas machen? Vielleicht mit Vererbung?
Der Code sieht momentan so aus:
Private WithEvents Items As Outlook.Items
Private Sub Application_Startup() 'Diese Sub wählt den Standardkalender an bei Event Startup
Dim Ns As Outlook.NameSpace
Set Ns = Application.GetNamespace("MAPI")
Set Items = Ns.GetDefaultFolder(olFolderCalendar).Items
End Sub
Private Sub Items_ItemChange(ByVal Item As Object) 'Das auslösende Event
Dim Appt As Outlook.AppointmentItem
If TypeOf Item Is Outlook.AppointmentItem Then 'Prüfen, ob das Event ein Termin ist
Set Appt = Item ' Wenn ja, dann erstelle Appt als Object von Outlook.AppointmentItem
If Appt.ResponseStatus = olResponseAccepted Then ' Alle Statusmöglichkeiten scannen und entsprechende Kategorie einstellen
Appt.Categories = "zugesagt"
Appt.Save
End If
If Appt.ResponseStatus = olResponseDeclined Then
Appt.Categories = "abgelehnt"
Appt.Save
End If
If Appt.ResponseStatus = olNotResponded Then
Appt.Categories = "nicht zugesagt"
Appt.Save
End If
If Appt.ResponseStatus = olResponseTentative Then
Appt.Categories = "mit Vorbehalt"
Appt.Save
End If
If Appt.ResponseStatus = olResponseOrganized Then
Appt.Categories =
Appt.Save
End If
End If
End Sub
Vielen Dank,
Georg
|