Home-›Foren-›Outlook Tools + Addons-›Outlook Kontakt suche via Excel VBA
- This topic has 1 Antwort, 2 Stimmen, and was last updated 10:06 um 22. Februar 2024 by Mailhilfe.
- AutorBeitrag
- 22. Februar 2024 um 09:23 #1030819JensonParticipant
Hallo zusammen,
ich habe einen potentielle Kundenadresse inkl. TelNr. bei dem sichergestellt sein muß,
dass er nicht schon in Outlook – Kontakte angelegt ist.Ich würde nun gerne überprüfen, ob die Telefonnummer bereits einem
Bestandskunden in Outlook zugeordnet ist. Wenn ja, soll dieser Kontakt geöffnet werden.
Wenn nicht, soll die Telefonnummer markiert werden. Optimalerweise
soll dann die “^”-Taste gedrückt werden, da dann der Kunde ohne die Nummer
extra einzugeben vom Softphone gewählt wird.Leider bin ich bei der Netz-Recherche nicht fündig geworden – bin mir aber sicher,
dass das geht….lg
Jenson22. Februar 2024 um 10:06 #1030820MailhilfeKeymasterHallo Jenson,
Dein Vorhaben lässt sich mit VBA in Excel umsetzen, indem du die Outlook-Objektbibliothek in deinem VBA-Projekt referenzierst und dann entsprechende Skripte schreibst, um auf die Outlook-Kontakte zuzugreifen, nach der Telefonnummer zu suchen und entsprechende Aktionen durchzuführen. Hier ist eine schrittweise Anleitung, wie du vorgehen könntest:
Schritt 1: Referenz zur Outlook-Objektbibliothek hinzufügen
- Öffne Excel und gehe zum VBA-Editor (Alt + F11).
- Im VBA-Editor, gehe zu “Extras” > “Verweise”.
- Suche in der Liste nach “Microsoft Outlook xx.0 Object Library” (wobei “xx” für die Versionsnummer steht, z.B. “Microsoft Outlook 16.0 Object Library” für Outlook 2016). Setze ein Häkchen davor und bestätige mit “OK”.
Schritt 2: VBA-Skript schreiben
Im VBA-Editor kannst du nun ein Modul erstellen (Einfügen > Modul) und folgenden Code einfügen. Dieser Code sucht in deinen Outlook-Kontakten nach einer bestimmten Telefonnummer. Wenn die Telefonnummer gefunden wird, öffnet der Code den entsprechenden Kontakt. Wenn nicht, könntest du eine weitere Aktion definieren, wie z.B. das Markieren der Telefonnummer oder das Drücken der “^”-Taste.
Sub SucheOutlookKontakt()
Dim OutlookApp As Object
Dim Namespace As Object
Dim Ordner As Object
Dim KontaktItem As Object
Dim Gefunden As Boolean
Dim Telefonnummer As String‘ Telefonnummer, die gesucht werden soll
Telefonnummer = “123456789” ‘ Hier die tatsächliche Telefonnummer einsetzen‘ Outlook-Instanz erstellen
Set OutlookApp = CreateObject(“Outlook.Application”)
Set Namespace = OutlookApp.GetNamespace(“MAPI”)‘ Auf den Kontakte-Ordner zugreifen
Set Ordner = Namespace.GetDefaultFolder(10) ‘ 10 steht für den Ordner KontakteGefunden = False
‘ Suche jeden Kontakt im Kontakte-Ordner
For Each KontaktItem In Ordner.Items
If InStr(KontaktItem.BusinessTelephoneNumber, Telefonnummer) > 0 Or _
InStr(KontaktItem.MobileTelephoneNumber, Telefonnummer) > 0 Or _
InStr(KontaktItem.HomeTelephoneNumber, Telefonnummer) > 0 Then
‘ Telefonnummer gefunden, Kontakt öffnen
KontaktItem.Display
Gefunden = True
Exit For
End If
Next KontaktItemIf Not Gefunden Then
‘ Wenn nicht gefunden, könntest du hier die Aktion für die “^”-Taste definieren
MsgBox “Telefonnummer nicht gefunden.”, vbInformation
End If‘ Objekte aufräumen
Set KontaktItem = Nothing
Set Ordner = Nothing
Set Namespace = Nothing
Set OutlookApp = Nothing
End SubSchritt 3: Skript ausführen
Führe das Skript direkt im VBA-Editor aus, indem du es auswählst und auf “Ausführen” klickst oder F5 drückst.
Hinweis zur “^”-Taste:
Das Simulieren von Tastendrücken, wie das Drücken der “^”-Taste, kann in VBA etwas komplexer sein, besonders wenn es um die Interaktion mit externen Anwendungen geht. Eine einfache Möglichkeit, eine Tastenkombination in VBA zu simulieren, ist die Verwendung der
SendKeys
-Methode, allerdings kann diese Methode unzuverlässig sein und funktioniert möglicherweise nicht immer wie erwartet, besonders in Kombination mit anderen Anwendungen wie einem Softphone.If Not Gefunden Then
‘ Telefonnummer markieren oder “^”-Taste simulieren
SendKeys “^”, True
End IfBitte beachte, dass
SendKeys
bestimmte Sicherheitsrisiken birgt und in manchen Umgebungen deaktiviert sein kann. Es ist immer empfehlenswert, nach spezifischen Lösungen für die Anwendung zu suchen, mit der du interagierst (in deinem Fall das Softphone), um herauszufinden, ob es eine sicherere und zuverlässigere Schnittstelle für die Automation bietet.Ich hoffe, diese Anleitung hilft dir dabei, dein Projekt umzusetzen. Wenn du weitere Fragen hast oder spezifische Probleme auftreten, zögere nicht, weitere Hilfe zu suchen.
- AutorBeitrag