Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1648to1652
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Email-Verteiler zerlegen und prüfen ob vorhanden

Email-Verteiler zerlegen und prüfen ob vorhanden
08.10.2018 10:04:25
earlycon
Guten Morgen zusammen,
bei folgendem Vorhaben benötige ich Eure Hilfe:
ich lasse in meiner Mappe Emails mit individuellen Dateianhängen per VBA erstellen (funktioniert auch). Es kann dann gewählt werden, ob als Empfänger eine definierte Verteilerliste (Sheet 4, Spalte C) gewählt werden soll, oder ein Empfänger manuell hinzugefügt werden soll. Im letzteren Fall erfolgt nach Eingabe der Emailadresse eine Abfrage, ob ein weitere Emailadresse hinzugefügt werden soll usw. Die Adressen werden in der Variablen "Verteiler" gespeichert und dann in das BCC von Outlook übergeben. Ich würde nun gerne noch die in "Verteiler" gespeicherten Emailadressen mit der Verteilerliste (Spalte C) abgleichen und hier noch nicht enthaltene Adressen einfügen lassen. Hierfür müsste die Variable aber vorher in die einzelnen Emailadressen zerlegt werden. Und genau da habe ich mein Problem... Könnte mir da jemand behilflich sein ?
Besten Dank dafür und einen angenehmen Wochenstart
Stefan

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

Betreff
Datum
Anwender
Anzeige
AW: Email-Verteiler zerlegen und prüfen ob vorhanden
08.10.2018 10:15:16
ChrisL
Hi Stefan
Ein Beispiel...
Sub t()
Dim rngVerteiler As Range, arrVerteiler As Variant
Dim strZusaetzlich As String
Set rngVerteiler = Range("C1:C5")
arrVerteiler = Application.Transpose(rngVerteiler)
strZusaetzlich = "zusätzlich@mail.com"
If WorksheetFunction.CountIf(rngVerteiler, strZusaetzlich) = 0 Then
ReDim Preserve arrVerteiler(UBound(arrVerteiler) + 1)
arrVerteiler(UBound(arrVerteiler)) = strZusaetzlich
Else
MsgBox "bereits vorhanden"
End If
MsgBox Join(arrVerteiler, ";")
End Sub
cu
Chris
AW: Email-Verteiler zerlegen und prüfen ob vorhanden
08.10.2018 10:18:50
Oberschlumpf
Hi Stefan,
(ungetestet)
Da die neuen Mailadressen mit "," als Trenner im Code übergeben werden, müsstest du die Variable, die die Mailadressen enthält,...
...zuerst mit SPLIT() in eine Array-Variable übergeben

Dim lstrMail() As String
lstrMail = Split(DeineMailvariable, ",")

...jetzt könntest du per For/Next-Schleifen die Spalte C in Sheet 4 mit dem Inhalt der Arrayvariablen überprüfen

Dim liIdxAr As Integer, liIdxMail As Integer, lboVorhanden As Boolean
With Sheets(4)
For liIdxMail = 1 To .Cells(Rows.Count, 3).End(xlUp).Row 'die 1 ist erste Zeile in Spalte C
'wenn die Verteilerliste NICHT
'in Zeile 1 beginnt, ddann  _
anpassen!
For liIdxAr = 0 To UBound(lstrMail)
If LCase(.Range("C" & liIdxMail).Value) = LCase(lstrMail(liIdxAr)) Then
lboVorhanden = True
Exit For
End If
Next
If lboVorhanden = True Then
lboVorhanden = False
Else
.Range("C" & .Cells(Rows.Count, 3).End(xlUp).Row + 1).Value = lstrMail(liIdxAr)  _
End If
Next
End With

Hilfts?
Wenn nicht, zeig uns bitte per Upload eine Bsp-Datei mit Bsp-Daten + dem bisherigen Code.
Ciao
Thorsten
Anzeige
Danke an Thorsten und ChrisL
08.10.2018 10:26:10
earlycon
Hallo Thorsten, hallo ChrisL,
Wahnsinn... mit so schneller Rückmeldung hätte ich nicht gerechnet, vielen Dank.
Eure Vorschläge muss ich erstmal verarbeiten und ein meinen Code einpflegen :-)
Da ich das hier auf der Arbeit nur so nebenbei machen kann, dauert das ein wenig.
Aber ich melde mich dann zurück, ob es funktioniert hat.
Nochmals besten Dank, das ist ein super Forum hier !
Viele Grüße Stefan
Läuft ! Nochmals Danke an Thorsten und ChrisL
10.10.2018 07:55:51
earlycon
Hallo Thorsten, Hallo ChrisL,
nach ausgiebigen Testen habe ich mich für die Variante von Dir Thorsten entschieden und den Code an meine Bedürfnisse angepasst (For-Next-Schleifen getauscht). Nun läuft alles perfekt.
Vielen Dank für die Hilfe.
Gruß Stefan
Anzeige

312 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige