Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Outlook Kontakte auslesen und eintragen

Forumthread: Outlook Kontakte auslesen und eintragen

Outlook Kontakte auslesen und eintragen
01.02.2004 14:23:47
dietmar knoll
Hallo
Bitte um Hilfe
Ich möchte in meiner Rechnungsvorlage die Adresse aus Meinem Outlook Kontakte Verzeichnis eintragen lassen, mittels Listbox o.ä.
Anrede
Vorname Name
Strasse
PLZ Ort
ev.Tel. Nr und Fax Nr.
Vielen Dank im voraus
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Outlook Kontakte auslesen und eintragen
01.02.2004 15:32:35
Peter Feustel
Hallo Dietmar,
ich mache das in einer mehrspaltigen ListBox so:


Sub ListBoxAusOutlook()
'
'  Achtung: Der Verweis (Extras/Verweise unter VBA) auf die
'  "Microsoft Outlook 9.0 Object Library" muss aktiviert sein !!!
'
Dim Verz       As Object
Dim iIndx      As Integer
Dim olMAPI     As New Outlook.Application
Dim objItem    As Object
 
   Application.DisplayAlerts = False
   
   Application.StatusBar = "   die Adressen werden aus Outlook geholt " _
                         & " - das kann einen Moment dauern."
             
   Set Verz = olMAPI.GetNamespace("MAPI").GetDefaultFolder(olFolderContacts)
   
   UserForm1.ListBox1.ColumnCount = 7
   UserForm1.ListBox1.ColumnWidths = _
            "7,0 cm; 3,5 cm; 1,0 cm; 3,0 cm; 1,0 cm; 3,5 cm; 3,0 cm"
   For iIndx = 1 To Verz.Items.Count
      Set objItem = Verz.Items(iIndx)
      With objItem
         UserForm1.ListBox1.AddItem " "
         UserForm1.ListBox1.List(iIndx - 1, 0) = .FirstName _
                                         & " " & .LastName
         If .BusinessAddressPostOfficeBox = "" Then
            UserForm1.ListBox1.List(iIndx - 1, 1) = .BusinessAddressStreet
          Else
            UserForm1.ListBox1.List(iIndx - 1, 1) = .BusinessAddressPostOfficeBox
         End If
         UserForm1.ListBox1.List(iIndx - 1, 2) = .BusinessAddressPostalCode
         UserForm1.ListBox1.List(iIndx - 1, 3) = .BusinessAddressCity
         UserForm1.ListBox1.List(iIndx - 1, 4) = .CustomerID
         UserForm1.ListBox1.List(iIndx - 1, 5) = .AssistantName
         UserForm1.ListBox1.List(iIndx - 1, 6) = .MiddleName
      End With
   Next iIndx
      
   Set objItem = Nothing
   Set olMAPI = Nothing
   
'  die ListBox nach Namen (nach nur einer, der ersten Spalte) sortieren
   
   listbox_quick_sort 0, 6, UserForm1.ListBox1, 0, UserForm1.ListBox1.ListCount - 1
   
   Application.DisplayAlerts = True
   
   Application.StatusBar = False
              
End Sub

     Code eingefügt mit Syntaxhighlighter 2.5


Gruß, Peter
Anzeige
AW: Outlook Kontakte auslesen und eintragen
01.02.2004 15:52:27
dietmar knoll
Hallo Peter
Herzlichen Dank. Funktioniert einwandfrei.
AW: Outlook Kontakte auslesen und eintragen
01.02.2004 15:56:51
Knut
Late binding ist wohl hier besser:
Option Explicit

Sub ListBoxAusOutlook()
Dim Verz       As Object
Dim iIndx      As Integer
Dim olMAPI     As Object
Dim objItem    As Object
Set olMAPI = CreateObject("Outlook.Application")
Application.DisplayAlerts = False
Application.StatusBar = "   die Adressen werden aus Outlook geholt " _
& " - das kann einen Moment dauern."
Set Verz = olMAPI.GetNamespace("MAPI").GetDefaultFolder(olFolderContacts)
UserForm1.ListBox1.ColumnCount = 7
UserForm1.ListBox1.ColumnWidths = _
"7,0 cm; 3,5 cm; 1,0 cm; 3,0 cm; 1,0 cm; 3,5 cm; 3,0 cm"
For iIndx = 1 To Verz.Items.Count
Set objItem = Verz.Items(iIndx)
With objItem
UserForm1.ListBox1.AddItem " "
UserForm1.ListBox1.List(iIndx - 1, 0) = .FirstName _
& " " & .LastName
If .BusinessAddressPostOfficeBox = "" Then
UserForm1.ListBox1.List(iIndx - 1, 1) = .BusinessAddressStreet
Else
UserForm1.ListBox1.List(iIndx - 1, 1) = .BusinessAddressPostOfficeBox
End If
UserForm1.ListBox1.List(iIndx - 1, 2) = .BusinessAddressPostalCode
UserForm1.ListBox1.List(iIndx - 1, 3) = .BusinessAddressCity
UserForm1.ListBox1.List(iIndx - 1, 4) = .CustomerID
UserForm1.ListBox1.List(iIndx - 1, 5) = .AssistantName
UserForm1.ListBox1.List(iIndx - 1, 6) = .MiddleName
End With
Next iIndx
Set objItem = Nothing
Set olMAPI = Nothing
'  die ListBox nach Namen (nach nur einer, der ersten Spalte) sortieren
'   listbox_quick_sort 0, 6, UserForm1.ListBox1, 0, UserForm1.ListBox1.ListCount - 1
Application.DisplayAlerts = True
Application.StatusBar = False
End Sub


Knut
Anzeige
AW: Outlook Kontakte auslesen und eintragen
01.02.2004 15:40:16
Torsten
Moin,
ich weiß nicht ob ich das hier veröffentlichen kann oder darf.
Versuchen!
nach Flemming Entdecker des Penicillin
Bei Smarttools gibt es genau das was gesucht wird.
Es kann als Zip-Datei kostenlos heruntergeladen werden und eine Erklärung ist auch dabei.
Die bas-Datei und das Formular in bestehendes Project importieren, Zellen oder ähnliches anpassen, Outlook starten, Makro ausführen, Rechnung schreiben, drucken und verschicken, auf die Bank gehen, schauen ob die Moneten schon das sind fertig.
Einfach genial, genial einfach!
Hier der Link: Outlook-To-Excel
Tee! (nach Flemming)
Tschüß
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Kontakte aus Excel in Outlook importieren


Schritt-für-Schritt-Anleitung

  1. Vorbereitungen treffen:

    • Stelle sicher, dass Du die „Microsoft Outlook 9.0 Object Library“ in den Verweisen von VBA aktiviert hast. Dies ist notwendig, um auf die Outlook-Funktionen zugreifen zu können.
    • Öffne Excel und erstelle ein neues Makro, indem Du die Entwicklertools aktivierst.
  2. VBA-Code einfügen:

    • Füge den folgenden VBA-Code in ein neues Modul ein:
    Sub ListBoxAusOutlook()
       Dim Verz       As Object
       Dim iIndx      As Integer
       Dim olMAPI     As Object
       Dim objItem    As Object
       Set olMAPI = CreateObject("Outlook.Application")
       Application.DisplayAlerts = False
       Application.StatusBar = "   die Adressen werden aus Outlook geholt " _
       & " - das kann einen Moment dauern."
       Set Verz = olMAPI.GetNamespace("MAPI").GetDefaultFolder(olFolderContacts)
       UserForm1.ListBox1.ColumnCount = 7
       UserForm1.ListBox1.ColumnWidths = "7,0 cm; 3,5 cm; 1,0 cm; 3,0 cm; 1,0 cm; 3,5 cm; 3,0 cm"
    
       For iIndx = 1 To Verz.Items.Count
           Set objItem = Verz.Items(iIndx)
           With objItem
               UserForm1.ListBox1.AddItem " "
               UserForm1.ListBox1.List(iIndx - 1, 0) = .FirstName & " " & .LastName
               If .BusinessAddressPostOfficeBox = "" Then
                   UserForm1.ListBox1.List(iIndx - 1, 1) = .BusinessAddressStreet
               Else
                   UserForm1.ListBox1.List(iIndx - 1, 1) = .BusinessAddressPostOfficeBox
               End If
               UserForm1.ListBox1.List(iIndx - 1, 2) = .BusinessAddressPostalCode
               UserForm1.ListBox1.List(iIndx - 1, 3) = .BusinessAddressCity
               UserForm1.ListBox1.List(iIndx - 1, 4) = .CustomerID
               UserForm1.ListBox1.List(iIndx - 1, 5) = .AssistantName
               UserForm1.ListBox1.List(iIndx - 1, 6) = .MiddleName
           End With
       Next iIndx
       Set objItem = Nothing
       Set olMAPI = Nothing
       Application.DisplayAlerts = True
       Application.StatusBar = False
    End Sub
  3. Makro ausführen:

    • Starte das Makro und die Kontakte aus Outlook werden in die ListBox Deiner UserForm geladen.

Häufige Fehler und Lösungen

  • Fehler: „Objekt nicht gefunden“

    • Überprüfe, ob die Outlook-Objektbibliothek korrekt aktiviert ist.
  • Problem: ListBox bleibt leer

    • Stelle sicher, dass Du die richtige UserForm und ListBox referenzierst.
  • Fehler: Anwendung stürzt ab

    • Prüfe, ob Outlook ordnungsgemäß installiert und konfiguriert ist.

Alternative Methoden

  • Outlook-Kontakte in Excel importieren:

    • Du kannst auch die Funktion „Daten abrufen“ in Excel verwenden, um Kontakte direkt aus Outlook zu importieren. Wähle dazu „Daten“ > „Daten abrufen“ > „Aus anderen Quellen“ > „Aus Microsoft Exchange“ und folge den Anweisungen.
  • Verwendung von Add-Ins:

    • Es gibt verschiedene Add-Ins wie „Outlook-To-Excel“, die eine einfachere Möglichkeit bieten, Kontakte aus Excel in Outlook zu importieren.

Praktische Beispiele

  • Kontakte in Outlook importieren:

    • Wenn Du eine Liste von Kontakten in Excel hast, kannst Du sie mithilfe des VBA-Codes schnell in Outlook importieren, indem Du die Spalten entsprechend anpasst.
  • Kontakt Outlook versenden:

    • Du kannst auch Kontakte aus der ListBox auswählen und direkt eine E-Mail an diese Kontakte senden, indem Du den Outlook-Kontakt-Objektaufruf in das Makro einfügst.

Tipps für Profis

  • Outlook Adressbuch sortieren:

    • Nutze VBA-Funktionen, um das Adressbuch nach verschiedenen Kriterien zu sortieren, bevor Du die Kontakte in Excel importierst.
  • Outlook eigene Visitenkarte erstellen:

    • Erstelle eine Visitenkarte in Outlook, die Du schnell an Kontakte versenden kannst, die Du importiert hast.

FAQ: Häufige Fragen

1. Wie kann ich Kontakte von Excel in Outlook importieren?
Du kannst die oben beschriebene VBA-Methode verwenden, um Kontakte aus Excel in Outlook zu importieren.

2. Was ist der Vorteil der Verwendung eines Makros?
Ein Makro automatisiert den Prozess und spart Zeit, insbesondere wenn Du regelmäßig Kontakte importieren oder exportieren musst.

3. Kann ich auch Gruppen von Kontakten importieren?
Ja, Du kannst auch Kontaktgruppen in Outlook importieren, indem Du die entsprechenden Attribute im VBA-Code anpasst.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige