Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Kann Outlook mit zu vielen Kontakten nicht umgehen?

Frage Microsoft Outlook & Mail

Mitglied: 13martin37

13martin37 (Level 1) - Jetzt verbinden

22.01.2009, aktualisiert 19:33 Uhr, 4629 Aufrufe, 4 Kommentare

Hi Jungz (und mädelz)!

stehe vor einem unverständlichen Problem =)
Hab ein programm in VBA geschrieben, das super funktioniert, wenn ich nur so ca 10-40 Kontakte habe.
Sobald ich aber weitere Kontakte in den Kontaktordner stecke, sieht Outlook schwarz.
Erstmal: Was macht mein Programm? Es gleicht die Emailadresse aus einer Textdatei mit allen Kontakten ab und findet es eine Übereinstimmung, verändert es einen Wert des Kontakts.
Was macht das Programm ab 100 Kontakten nicht mehr?
Ab dem 3. oder 4. Abgleich (die alle noch korrekt funktionieren) findet das Programm keine der emailadressen mehr, obwohl diese in den Kontakten zu finden sind.

Ich hab leider keine Ahnung, was das Problem ist. Zu wenig RAM? Kann ja wohl nicht sein. Variablen begrenzt? Kann ich mir auch nicht vorstellen.
Um Hilfe wäre ich sehr dankbar!

Der ursprüngliche Thread mit Fragestellung von Programmcode
http://www.administrator.de/index.php?content=105801

Hier noch der Programmcode:

Private Sub CommandButton1_Click()
Dim Kontakt As ContactItem
Dim eMailAdresse As String
Dim i As Integer
On Error Resume Next

Open "U:\Outlook\Abmeldungen.txt" For Input As #1
For i = 0 To 30
Line Input #1, eMailAdresse
MsgBox eMailAdresse + " wird gesucht!"

For Each Kontakt In Session.GetDefaultFolder(olFolderContacts).Items
If Kontakt.Email1Address = eMailAdresse Then
MsgBox Kontakt.LastNameAndFirstName + " mit der Emailadresse " + eMailAdresse + " gefunden" + vbCr + "Markierung entfernt!"
Kontakt.UserProperties("News").Value = False
Kontakt.Save
End If
Next
Next

Close #1
MsgBox "Aufgabe erledigt"
Unload Me
End Sub
Mitglied: Trax83
26.01.2009 um 16:50 Uhr
Hallo 13martin37,

bin kein VBA Specialist, aber mit for each rennst du ja durch jedes Object innerhalb eines "Arrays". Kann es sein, dass er dir an der stelle immer resigniert?

würde an deiner stelle auch nicht stupide jeden Kontakt einmal öffnen um mir die Email anzusehen....

folder = namespace.GetDefaultFolder(olFolderContacts)
filter = "[Email1Address] LIKE 'max@mustermann.de'"
searchfolder = folder.Items.Restrict(filter)
anzahl = searchfolder.Count
if anzahl > 0 then
for i = 1 to anzahl do
folderobject := searchfolder.Item(i)
folderobject.ItemProperties.Item("News").value = False
folderobject.save
next
end if



vielleicht gehts so besser....


PS.: Outlook kann mit einigen Kontakten mehr als 100 umgehen. wir verwenden einen öffentlichen Ordner dafür mit mittlerweile 200.000 ContactItems. Jedoch wird die ganze Sache dann sehr langsam.
Bitte warten ..
Mitglied: 13martin37
29.01.2009 um 14:35 Uhr
dein tip war super. hatte zwar paar fehler. aber die richtung war sehr hilfreich.
mein neuer code schaut so aus:

Open "U:\Outlook\Abmeldungen.txt" For Input As #1
For i = 0 To 8
Line Input #1, eMailAdresse
eMailAdresse = "ma.x@mustermann.de"
MsgBox eMailAdresse & " wird gesucht!"
Set objContact = objContacts.Items.Find("[Email1Address] = " & eMailAdresse & "")
If Not TypeName(objContact) = "Nothing" Then
MsgBox "Name: " & objContact.LastNameAndFirstName & vbCr & "Wert: " & objContact.UserProperties("News").Value
End If
Next

Leider funktionierts immer noch nicht komplett, denn:
Ich hab regelmäßig einen schönen Laufzeitfehler (Laufzeitfehler -71172087(fbc20009): Bedingung kann nicht geparst werden. Fehler bei "@musterman".

Passiert in folgender Zeile:
Set objContact = objContacts.Items.Find("[Email1Address] = " & eMailAdresse & "")

Aber nur wenn die eMailAdresse einen Punkt (vor dem Klammeraffen) beinhaltet.
Die Suche nach max@mustermann.de liefert keinen Fehler.
Aber die Suche nach m.ax@mustermann.de oder ma.x@mustermann.de hingegen den oben genannten Laufzeitfehler.
Bitte warten ..
Mitglied: 13martin37
29.01.2009 um 14:57 Uhr
gelöst...
Set objContact = objContacts.Items.Find("""[Email1Address] = " & eMailAdresse & """")
Zu wenig Anführungsstriche...
Bitte warten ..
Mitglied: Trax83
30.01.2009 um 10:47 Uhr
super,

sorry für die Fehler...war auf die schnelle aus delphi nach vba umgedichtet...

Mit freundlichen Grüßen
Trax83
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
Heiß diskutierte Inhalte
Windows Userverwaltung
Ausgeschiedene Mitarbeiter im Unternehmen - was tun mit den AD Konten? (33)

Frage von patz223 zum Thema Windows Userverwaltung ...

LAN, WAN, Wireless
FritzBox, zwei Server, verschiedene Netze (21)

Frage von DavidGl zum Thema LAN, WAN, Wireless ...

Viren und Trojaner
Aufgepasst: Neue Ransomware Goldeneye verbreitet sich rasant (20)

Link von Penny.Cilin zum Thema Viren und Trojaner ...