ich möchte, dass bei einer Änderung im Kontakt im benutzerdefiniertem Feld "USERNAME" der Environ("username") eingetragen wird?
Mit folgendem Code gelingt es mir nicht, kann mir jemand helfen?
Mein Ordner heißt Kontakte im Outlook 2016.
Danke
Code: Alles auswählen
Private WithEvents olItems As Outlook.Items
Private Sub Application_Startup()
Dim olNS As Outlook.NameSpace
Dim olFolder As Outlook.Folder
' Namespace und Standardkontaktordner festlegen
Set olNS = Application.GetNamespace("MAPI")
Set olFolder = olNS.GetDefaultFolder(olFolderContacts)
' Ereignislistener für den Kontaktordner einrichten
Set olItems = olFolder.Items
End Sub
Private Sub olItems_ItemChange(ByVal Item As Object)
Dim olContact As Outlook.ContactItem
' Überprüfen, ob es sich um einen Kontakt handelt
If TypeOf Item Is Outlook.ContactItem Then
Set olContact = Item
' Überprüfen, ob das Feld "Lastusername" vorhanden ist
If olContact.UserProperties.Find("Lastusername") Is Nothing Then
' Wenn nicht, das benutzerdefinierte Feld hinzufügen
olContact.UserProperties.Add "Lastusername", Outlook.OlUserPropertyType.olText
End If
' Den Wert von Environ("username") in das Feld "Lastusername" eintragen
olContact.UserProperties("Lastusername").Value = Environ("username")
' Speichern der Änderungen im Kontakt
olContact.Save
End If
End Sub