Zum Inhalt springen
Hilfe zu Outlook, Thunderbird, KuNoMail & Co.

Outlook Kontakt suche via Excel VBA

Überblick

Status
Beantwortet
Gefragt von
Jenson
Gefragt am
Antworten
1
Letzte Antwort
von Mailhilfe

Schlagwörter:

Frage

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
Jenson

1 Antwort

1 Antwort anzeigen (von insgesamt 1)
  1. Hallo 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

    1. Öffne Excel und gehe zum VBA-Editor (Alt + F11).
    2. Im VBA-Editor, gehe zu „Extras“ > „Verweise“.
    3. 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 Kontakte

    Gefunden = 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 KontaktItem

    If 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 Sub

    Schritt 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 If

    Bitte 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.

     

1 Antwort anzeigen (von insgesamt 1)
  • Sie müssen angemeldet sein, um zu diesem Thema eine Antwort verfassen zu können.