Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1480to1484
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 erstellen per Makro

Email Verteiler erstellen per Makro
18.03.2016 13:29:24
Princess88
Hallo liebe VBA_Freaks,
ich kenne mich leider noch nicht so gut mit VBA aus, deshalb benötige ich dringend eure Hilfe.
Ich möchte gerne einen Email Verteiler erstellen. Ich habe ein Tabellenblatt wo ich zu den Abteilungen die Email Adressen vorgebe.
Ich wünsche mir ein Makro, dass die Spalte A nach der vorgegebenen Abteilung überprüft und die Email Adressen dann mit Semikolon in die "An" Zeile setzt und diese Verteiler in eine Variable speichert:
SpalteA: SpalteB:
Vertrieb xy@welt.de
Vertrieb xyz@welt.de
Einkauf abc@welt.de
Vertrieb= (hier fehlt mir der Makro Code)
vergleiche ob in Spalte A "Vertrieb" steht und gebe die EmailAdressen aus
Spalte B aus(xy@welt.de;xyz@welt.de)
Am Ende möchte ich die Variable dann in mein Email Makro einsetzen:
With olApp.CreateItem(0)
.To = Vertrieb
Ich hoffe mir kann jemand helfen, habe echt ein Brett vor dem Kopf.
Viele Grüße
Princess88

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Email Verteiler erstellen per Makro
18.03.2016 13:40:48
Michael
Hallo!
Schematisch, so:
Sub Verteiler()
Dim Vertrieb As String
Dim Adr As Range
With ActiveSheet
For Each Adr In .Range("A1:A" & .Cells(.Rows.Count, 1).End(xlUp).Row)
If Adr.Text = "Vertrieb" Then
Vertrieb = Vertrieb & Adr.Offset(0, 1).Text & ";"
End If
Next Adr
End With
Vertrieb = Left(Vertrieb, Len(Vertrieb) - 1)
Debug.Print Vertrieb
End Sub
LG
Michael

AW: Email Verteiler erstellen per Makro
18.03.2016 14:38:37
Princess88
Hallo Michael,
du bist ein Schatz und hast mir das Wochenende gerettet! Das funktioniert super!
DANKEEEEEE
Grüße,
Princess88

Anzeige
Gern! Danke fd Rückmeldung, Schönes WE owT
18.03.2016 14:43:15
Michael

AW: Email Verteiler erstellen per Makro
18.03.2016 15:10:29
Princess88
Ne kleine Frage ist aber gerade noch aufgetaucht. Wie ist es denn, wenn ich mehrere Abteilungen
abfragen möchte, mit "or" funktioniert es leider nicht. Siehe unten:
Sub Verteiler()
Dim Vertrieb As String
Dim Adr As Range
With ActiveSheet
For Each Adr In .Range("A1:A" & .Cells(.Rows.Count, 1).End(xlUp).Row)
If Adr.Text = "Vertrieb" or "Controlling" or "Einkauf" Then
Vertrieb = Vertrieb & Adr.Offset(0, 1).Text & ";"
End If
Next Adr
End With
Vertrieb = Left(Vertrieb, Len(Vertrieb) - 1)
Debug.Print Vertrieb
End Sub
Danke ;-)

Anzeige
AW: Email Verteiler erstellen per Makro
18.03.2016 15:19:11
Princess88
Es hat sich gerade noch eine kleine Frage ergeben, wie ist es denn, wenn ich mehrere Abteilungen abfragen möchte, z.B. "Vertrieb" und "Einkauf" und "Versand"?

AW: Email Verteiler erstellen per Makro
18.03.2016 15:23:09
Princess88
Es hat sich gerade noch eine kleine Frage ergeben, wie ist es denn, wenn ich mehrere Abteilungen abfragen möchte, z.B. "Vertrieb" und "Einkauf" und "Versand"?

AW: Email Verteiler erstellen per Makro
18.03.2016 15:23:52
Princess88
Es hat sich gerade noch eine kleine Frage ergeben, wie ist es denn, wenn ich mehrere Abteilungen abfragen möchte, z.B. "Vertrieb" und "Einkauf" und "Versand"?

AW: Email Verteiler erstellen per Makro
18.03.2016 15:35:42
Steve
Hallo Princess,
bitte höre auf alle paar Minuten die gleiche Anfrage zu posten. Wenn du deinen Browser mit F5 aktualisierst, sieht auch du deine vorherigen Beiträge.
Damit du nicht erneut schreiben musst, will ich dir kurz helfen:
Eine If-Bedingung braucht immer einen oder mehrere Wahrheitswerte, welche mit "Or" bzw. "And" verbunden werden können. Der Text "Einkauf" ist leider kein Wahrheitswert, du musst stattdessen wieder eine Gleichung bilden, deren Ergebnis dann wahr oder falsch sein kann. In deinem Fall willst du ja Adr.Text prüfen, also dann so:
If Adr.Text = "Vertrieb" Or Adr.Text = "Einkauf" Or Adr.Text = "Versand" Then
lg Steve

Anzeige
Wobei sich hier eine Fall-Auswahl aufdrängt...
18.03.2016 20:10:31
Michael
Princess (und Steve),
etwa so:
Sub Verteiler()
Dim Vertrieb As String
Dim Adr As Range
With ActiveSheet
For Each Adr In .Range("A1:A" & .Cells(.Rows.Count, 1).End(xlUp).Row)
Select Case Adr.Text
Case Is = "Vertrieb", "Einkauf", "Versand"
Vertrieb = Vertrieb & Adr.Offset(0, 1).Text & ";"
Case Else
'ggf. anderer Code für andere Abteilungen
End Select
Next Adr
End With
Vertrieb = Left(Vertrieb, Len(Vertrieb) - 1)
Debug.Print Vertrieb
End Sub
LG und schönes Wochenende
Michael

237 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige