Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Outlook - Kontakte - Verteilerliste erstellen

Outlook - Kontakte - Verteilerliste erstellen
Jonas
Guten Tag zusammen!
Outlook und Excel konnte ich bisher ganz gut zusammen spielen lassen -
mit den Lösungen und Vorschlägen hier ist vieles machbar.
(E-Mails aus Tabellenblättern generieren, versenden und / oder mit Anhang versehen
- funktioniert. Termine finden, editieren, löschen etc. - ebenso möglich).
Aber (und nun zum Problem):
Selbst nach umfangreicher Recherche finde ich außer offenen Threats (auch hier zum
Thema nicht gelöst) keine Lösung zur Frage:
"Wie gereriere ich aus Excel heraus über Daten eines worksheets eine Verteilerliste in Outlook?"
Beinhaltet:
- Überprüfen, ob Verteilerliste vorhanden ist
- false = Verteilerliste anlegen
- Verteilerliste einen Namen geben
- Den hinzufügenden Namen auf Vorhandensein überprüfen
- false = Namen, Vornamen hinzufügen
- true = überspringen bzw. editieren wenn veränderte Werte
- E-Mail Adresse hinzufügen
In Outlook selbst kann wohl über Mail.Recipients.Add ein MailItem
hinzugefügt werden, um dann anschließend das Recipents-Objekt
dem Verteiler über AddMembers hinzuzufügen.
Und in Excel - So jedenfalls nicht lösbar!
Oder doch - sehe ich nur vor lauter Bäumen (objOl etc.) den Wald nicht mehr?
Bin dankbar für jeden Tipp, Hinweis und Erweiterung des Horizontes -
Gruß aus Stuttgart
Jonas H.
Anzeige

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

Betreff
Benutzer
Anzeige
AW: Outlook - Kontakte - Verteilerliste erstellen
09.04.2010 19:45:15
ChristianM
Hallo Jonas,
hier mal ein Ansatz - ohne weitere Fehlerabfangung u.ä.
Verweis auf "Microsoft Outlook 10.0 Object Library" muss gesetzt sein. Das ganze kann man bestimmt auch mit Late Binding aufziehen, aber bei der Entwicklung sind die Verweise ja ganz hilfreich.
Option Explicit
Sub Verteilerliste()
Dim appOutlook As New Outlook.Application
Dim objNS As Outlook.NameSpace
Dim objFolder As Object
Dim objDistList As Outlook.DistListItem
Dim objMail As MailItem
Dim objRcpnts As Recipients
Dim objRcpnt As Recipient
Dim i As Long
Set objNS = appOutlook.GetNamespace("MAPI")
Set objFolder = objNS.GetDefaultFolder(olFolderContacts)
Set objMail = appOutlook.CreateItem(Outlook.OlItemType.olMailItem)
Set objRcpnts = objMail.Recipients
'Namen aus "Tabelle1" auslesen - Spalte A: angzeigter Name, Spalte B: Mail-Adresse
With ThisWorkbook.Sheets("Tabelle1")
For i = 2 To .Cells(.Rows.Count, 1).End(xlUp).Row
Set objRcpnt = objRcpnts.Add(" " & .Cells(i, 2))
Next
End With
Set objDistList = objFolder.Items.Add(Outlook.OlItemType.olDistributionListItem)
objDistList.DLName = "VerteilerListe_Test"
objDistList.AddMembers objRcpnts
objDistList.Save
Set objDistList = Nothing
Set objRcpnt = Nothing
Set objRcpnts = Nothing
Set objMail = Nothing
Set objFolder = Nothing
Set objNS = Nothing
Set appOutlook = Nothing
End Sub
Gruß
Christian
Anzeige
AW: Outlook - Kontakte - Verteilerliste erstellen
10.04.2010 09:13:18
Jonas
Hallo Christian,
exakte Punktlandung. Vielen Dank - damit ist mir viel geholfen. Den Code kann ich jetzt so anpassen wie ich ihn brauche und die Objektbibliothek (nochmals) studieren.
Da das Programm nur in einer homogenen Umgebung laufen soll, kann ich beim Early Binding bleiben.
Nochmals: Danke
Erholsames Wochenende wünscht
Jonas
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Verteilerliste in Outlook aus Excel erstellen


Schritt-für-Schritt-Anleitung

Um eine Verteilerliste in Outlook aus Excel zu erstellen, benötigst du einen VBA-Code, der die E-Mail-Adressen aus einer Excel-Tabelle ausliest und in Outlook importiert. Hier ist eine einfache Schritt-für-Schritt-Anleitung:

  1. Excel-Daten vorbereiten: Erstelle eine Excel-Datei mit einer Tabelle, in der die Namen in der Spalte A und die E-Mail-Adressen in der Spalte B stehen. Benenne das Arbeitsblatt z.B. "Tabelle1".

  2. VBA-Editor öffnen: Drücke ALT + F11, um den VBA-Editor in Excel zu öffnen.

  3. Modul hinzufügen: Klicke auf Einfügen > Modul, um ein neues Modul zu erstellen.

  4. Code einfügen: Kopiere den folgenden Code in das Modul:

    Option Explicit
    Sub Verteilerliste()
       Dim appOutlook As New Outlook.Application
       Dim objNS As Outlook.NameSpace
       Dim objFolder As Object
       Dim objDistList As Outlook.DistListItem
       Dim objMail As MailItem
       Dim objRcpnts As Recipients
       Dim objRcpnt As Recipient
       Dim i As Long
    
       Set objNS = appOutlook.GetNamespace("MAPI")
       Set objFolder = objNS.GetDefaultFolder(olFolderContacts)
       Set objMail = appOutlook.CreateItem(Outlook.OlItemType.olMailItem)
       Set objRcpnts = objMail.Recipients
    
       ' Namen aus "Tabelle1" auslesen
       With ThisWorkbook.Sheets("Tabelle1")
           For i = 2 To .Cells(.Rows.Count, 1).End(xlUp).Row
               Set objRcpnt = objRcpnts.Add(.Cells(i, 2))
           Next
       End With
    
       Set objDistList = objFolder.Items.Add(Outlook.OlItemType.olDistributionListItem)
       objDistList.DLName = "VerteilerListe_Test"
       objDistList.AddMembers objRcpnts
       objDistList.Save
    
       ' Aufräumen
       Set objDistList = Nothing
       Set objRcpnt = Nothing
       Set objRcpnts = Nothing
       Set objMail = Nothing
       Set objFolder = Nothing
       Set objNS = Nothing
       Set appOutlook = Nothing
    End Sub
  5. Code ausführen: Drücke F5, um den Code auszuführen. Die Verteilerliste wird nun erstellt und in Outlook gespeichert.


Häufige Fehler und Lösungen

  • Fehler beim Zugriff auf Outlook: Stelle sicher, dass Outlook installiert und korrekt konfiguriert ist. Überprüfe, ob die "Microsoft Outlook xx.x Object Library" im VBA-Editor unter Extras > Verweise aktiviert ist.

  • E-Mail-Adressen nicht korrekt: Stelle sicher, dass die E-Mail-Adressen in der Excel-Tabelle korrekt formatiert sind und keine Leerzeichen enthalten.

  • Verteilerliste nicht erstellt: Überprüfe, ob du die richtigen Berechtigungen hast, um Kontakte in Outlook zu erstellen.


Alternative Methoden

Eine alternative Methode zur Erstellung eines E-Mail-Verteilers in Outlook ist die Verwendung von Excel-Add-Ins oder Drittanbieter-Tools, die eine benutzerfreundliche Oberfläche bieten. Diese Tools können oft auch CSV-Dateien importieren und die E-Mail-Adressen automatisch in eine Kontaktgruppe umwandeln.


Praktische Beispiele

Wenn du beispielsweise eine Excel-Liste mit den folgenden Daten hast:

Name E-Mail
Max Mustermann max@beispiel.de
Lisa Müller lisa@beispiel.de

Nach Ausführung des Codes wird in Outlook eine Verteilerliste namens "VerteilerListe_Test" erstellt, die die beiden E-Mail-Adressen enthält.


Tipps für Profis

  • Verwende Early Binding, wie im obigen Beispiel, um die Vorteile der IntelliSense-Funktion im VBA-Editor zu nutzen. So kannst du leichter Fehler finden und den Code anpassen.

  • Teste den Code in einer Testumgebung, um sicherzustellen, dass alles wie gewünscht funktioniert, bevor du ihn in einer produktiven Umgebung einsetzt.

  • Speichere die erstellte Verteilerliste in Outlook unter einem aussagekräftigen Namen, um die Verwaltung zu erleichtern.


FAQ: Häufige Fragen

1. Wie kann ich die Verteilerliste nach dem Erstellen bearbeiten?
Du kannst die Verteilerliste in Outlook öffnen, um Mitglieder hinzuzufügen oder zu entfernen.

2. Was mache ich, wenn Outlook nicht startet?
Überprüfe, ob Outlook ordnungsgemäß installiert ist und starte es manuell, bevor du den VBA-Code ausführst.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige