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

Forumthread: Outlook-Kontakte einlesen - liest nicht alle aus..

Outlook-Kontakte einlesen - liest nicht alle aus..
kle
Hallo,
mit folgendem Code, lese ich in eine Userform Kontakte eines vorher ausgewählten Ordners aus meinem Outlook-Kontakte-Ordner aus. Ansich klappt alles super, aber seit kurzem musste ich und andere User der Funktion, dass nicht! alle Kontakte aus dem Ornder eingelesen werden.
8 von 9 Ordnern klappt es 100%ig und in einem halt nicht. Da sind 1098 Kontakte drin, einlesen tut er nur 1077. Und bei einer Kollegin sind es 345 von 403 Konkten...
Woran kann es liegen und wie kann ich prüfen ?! bzw. ändern ?!
Gibt es eine ähnliche Funktion, um die Kontakte auszulesen - zum Test ?!?
Gruß und vielen dank!
Kay
Code:
' Einlesen der Kontakte in die Listview
Private Sub Lese_Kontakte()
Dim oCon As Object
Dim i As Integer
i = 0
'On Error Resume Next
' alle Kontakte des ausgewählten Kontakt-Ordners
For Each oCon In objFolder.Items
i = i + 1
With oCon
ListView1.ListItems.Add i, , .LastName
ListView1.ListItems(i).SubItems(1) = .FirstName
ListView1.ListItems(i).SubItems(2) = .Title
ListView1.ListItems(i).SubItems(3) = .CompanyName
ListView1.ListItems(i).SubItems(4) = .BusinessAddressPostalCode
ListView1.ListItems(i).SubItems(5) = .BusinessAddressCity
End With
Label3.Caption = ListView1.ListItems.Count
Next oCon
LVColumnWidth ListView1, False  ' Spaltenbreite anpassen
End Sub

Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Auch diese Variante las nicht alle...
29.01.2011 18:38:11
kle
Hallo, nun habe ich einen Code gefunden und diesen für mich angepasst.
Aber auch der liest nicht alle ein.
In einem Kontaktordner sind 1099 Kontakte drin. Einlesen (beide Varianten) jeweils 1077 !
Per Hand einmal 5 Kontakte, welche nicht eingelesen wurden in einen anderen Kontaktordner gepackt und erneut versucht diese einzulesen - geht. D.h. an den Kontakten an sich kann es nicht liegen ?!
Da Namen mit A, B, K, W, Z etc. fehlen, geh ich auch nicht davon aus, dass Excel irgendwann abbricht, da hier und da Kontakte fehlen mit verschiedenen Namen...
Ich versteh es nicht und es ist verdammt ärgerlich !
Brauche dringend EURE Ideen und Anregungen !
Gruß
Kay
Private Sub Kontakte_Lesen()
Dim objnSpace As Object
Dim objFolder As Object
' Outlook initialisieren
Set objOutlook = New Outlook.Application
' Namespace initialisieren
Set objNameSpace = objOutlook.GetNamespace("MAPI")
' Aktueller User in Outlook ermitteln
AktUser = objNameSpace.CurrentUser
' Ordner setzen, in unserem Fall Contacts
'Set objMapiFolder = objNameSpace.GetDefaultFolder(olFolderContacts)
Set objMapiFolder = objNameSpace.PickFolder ''' Dialog
' Items initialisieren
Set objItems = objMapiFolder.Items
' Einträge nach dem Nachnamen sortieren lassen
objItems.Sort "[Lastname]", False
' Alle Items in die das Tabellenblatt 2 diesmal schreiben
' (Zuname & Vorname)
For zaehler = 1 To objItems.Count
Worksheets(2).Cells(zaehler + 1, 1) = objItems(zaehler).LastName
Worksheets(2).Cells(zaehler + 1, 2) = objItems(zaehler).FirstName
Worksheets(2).Cells(zaehler + 1, 3) = objItems(zaehler).CompanyName
' Zähler Status des einlesens anzeigen
Label1.Caption = zaehler & " von " & objItems.Count
Next zaehler
End Sub

Anzeige
AW: Auch diese Variante las nicht alle...
04.02.2011 16:45:44
firmus
Hi Kay,
es "riecht" stark nach Verteilerlisten. In outlook-contacts werden auch Verteilerlisten gespeichert,
(andere object-class) und vielleicht noch weitere object-classes.
Ich filtere die wirklichen Kontakte über folgende Abfrage aus:
For Zeile = 1 To ocountfni1
If oFolder.Items(Zeile).Class = olContact Then
'olcontact = 40
'oldistlist = 69
Set oContact = oFolder.Items(Zeile)
'For Each oContact In oFolder.Items
...
...
Falls Du "on error resume next" gestzt hast, dann merkst Du den auftretenden Class-error nicht.
Der Eintrag wird einfach ignoriert.
Mit "On error goto 0" gesetzt (default) geht VBA beim Verarbeiten eines none-contact-entries in den debug-mode und Du kannst den "fehler" anhand der Daten untersuchen.
Viel Erfolg,
Firmus
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

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