Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1204to1208
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

Serienmail

Serienmail
kg36304
Hallo,
ich folgenden VBA Code in meiner Datenbank:

Sub Mail()
Dim outl, Mail As Object
Set outl = CreateObject("Outlook.Application")
Set Mail = outl.CreateItem(0)
Mail.Subject = "Rubriknummer" & " " & Range("B11").Value
Mail.To = Range("A1").Value & "; " & Range("a3").Value
'Mail.CC = "mail Adresse"
'Mail.BCC = "mailadresse"
'Wichtigkeit Hoch (1 = normal, 0 = niedrig)
Mail.Importance = 2
'Standardtext
Mail.body = "Hallo," & vbCrLf & vbCrLf & _
"Anbei eine Rubriknummeranforderung." & vbCrLf & vbCrLf & _
"Thema:" & " " & Range("B11").Value & vbCrLf & vbCrLf & _
"ET/s:" & vbCrLf & vbCrLf & _
"" & Range("B5").Value & ":   " & Range("B8").Value & vbCrLf & _
"" & Range("c5").Value & ":   " & Range("c8").Value & vbCrLf & _
"" & Range("d5").Value & ":   " & Range("d8").Value & vbCrLf & _
"" & Range("e5").Value & ":   " & Range("e8").Value & vbCrLf & _
"" & Range("f5").Value & ":   " & Range("f8").Value & vbCrLf & _
"" & Range("g5").Value & ":   " & Range("g8").Value & vbCrLf & _
"Format" & ":   " & Range("b14").Value & vbCrLf & vbCrLf & _
"Mit freundlichen Grüssen" & vbCrLf & vbCrLf & _
"aus dem Vogelsberg" & vbCrLf & vbCrLf
'oder: die aktive Exceldatei als Anhang mitsenden...
'Mail.Attachments.Add ThisWorkbook.FullName
'Mail anzeigen
Mail.Display
End Sub

Es geht auch alles, nur möchte ich das Excel alle Mail adressen in Spalte A (auch wenn dazwischen leere Felder sind) an Outlook übergibt, und zwar in einer Mail. Die funktion wie jede Adresse eine eigene Mail bekommt habe ich schon hinbekommen. Leider schaffe ich es nicht eine Mail zu generieren mit allen Adressen aus Spalte A. Super wäre natürlich, wenn im Feld Mail.To die erste gefundene Adresse aus Spalte A steht und die Restlichen im Feld Mail.CC. Aber das wäre nur das i-Tüpfelchen.
Danke Kai

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Serienmail
03.03.2011 13:08:03
Rudi
Hallo,
mit i-Tüpfelchen:
Sub Mail()
Dim outl, Mail As Object
Dim rngC As Range, sTo As String, sCC As String, oCC As Object
Set oCC = CreateObject("Scripting.Dictionary")
For Each rngC In Range(Cells(2, 1), Cells(Rows.Count, 1).End(xlUp))
If rngC  "" Then
If sTo  "" Then
oCC(rngC.Value) = 0
Else
sTo = rngC.Value
End If
End If
Next
sCC = Join(oCC.keys, ";")
Set outl = CreateObject("Outlook.Application")
Set Mail = outl.CreateItem(0)
Mail.Subject = "Rubriknummer" & " " & Range("B11").Value
Mail.To = sTo
Mail.CC = sCC
'Mail.BCC = "mailadresse"
'Wichtigkeit Hoch (1 = normal, 0 = niedrig)
Mail.Importance = 2
'Standardtext
Mail.body = "Hallo," & vbCrLf & vbCrLf & _
"Anbei eine Rubriknummeranforderung." & vbCrLf & vbCrLf & _
"Thema:" & " " & Range("B11").Value & vbCrLf & vbCrLf & _
"ET/s:" & vbCrLf & vbCrLf & _
"" & Range("B5").Value & ":   " & Range("B8").Value & vbCrLf & _
"" & Range("c5").Value & ":   " & Range("c8").Value & vbCrLf & _
"" & Range("d5").Value & ":   " & Range("d8").Value & vbCrLf & _
"" & Range("e5").Value & ":   " & Range("e8").Value & vbCrLf & _
"" & Range("f5").Value & ":   " & Range("f8").Value & vbCrLf & _
"" & Range("g5").Value & ":   " & Range("g8").Value & vbCrLf & _
"Format" & ":   " & Range("b14").Value & vbCrLf & vbCrLf & _
"Mit freundlichen Grüssen" & vbCrLf & vbCrLf & _
"aus dem Vogelsberg" & vbCrLf & vbCrLf
'oder: die aktive Exceldatei als Anhang mitsenden...
'Mail.Attachments.Add ThisWorkbook.FullName
'Mail anzeigen
Mail.Display
End Sub

Gruß
Rudi
Anzeige
Rudi war schneller + besser ;-) owT
03.03.2011 13:21:37
Ralf_P
AW: Serienmail
03.03.2011 15:22:15
kg36304
Also das ging nicht nur verdammt schnell, sondern ist auch noch 100% das was ich gebraucht habe.
Ihr seit echt die besten.
Vielen Vielen Dank
LG
Kai
AW: Serienmail
03.03.2011 13:19:18
Ralf_P
Hallo Kai,
versuche mal das:
Sub Mail()
Dim outl, Mail As Object
For Each Cell In Range("A1:A65000")
If Cell  "" Then
Erow = Cell.Address
TO_adresse = Cell.value
Exit For
End If
Next
Lrow = Cells(Rows.Count, 1).End(xlUp).Address  '1 steht für Spalte 1 also A
For Each Cell In Range(Erow, Lrow)
If Cell  "" Then
CC_adressen = CC_adressen & ";" & Cell.Value
End If
Next
CC_adressen = Mid(CC_adressen, 2, Len(CC_adressen))
Set outl = CreateObject("Outlook.Application")
Set Mail = outl.CreateItem(0)
Mail.Subject = "Rubriknummer" & " " & Range("B11").Value
Mail.To = TO_adresse
Mail.CC = CC_adressen
'Mail.BCC = "mailadresse"
'Wichtigkeit Hoch (1 = normal, 0 = niedrig)
Mail.Importance = 2
'Standardtext
Mail.body = "Hallo," & vbCrLf & vbCrLf & _
"Anbei eine Rubriknummeranforderung." & vbCrLf & vbCrLf & _
"Thema:" & " " & Range("B11").Value & vbCrLf & vbCrLf & _
"ET/s:" & vbCrLf & vbCrLf & _
"" & Range("B5").Value & ":   " & Range("B8").Value & vbCrLf & _
"" & Range("c5").Value & ":   " & Range("c8").Value & vbCrLf & _
"" & Range("d5").Value & ":   " & Range("d8").Value & vbCrLf & _
"" & Range("e5").Value & ":   " & Range("e8").Value & vbCrLf & _
"" & Range("f5").Value & ":   " & Range("f8").Value & vbCrLf & _
"" & Range("g5").Value & ":   " & Range("g8").Value & vbCrLf & _
"Format" & ":   " & Range("b14").Value & vbCrLf & vbCrLf & _
"Mit freundlichen Grüssen" & vbCrLf & vbCrLf & _
"aus dem Vogelsberg" & vbCrLf & vbCrLf
'oder: die aktive Exceldatei als Anhang mitsenden...
'Mail.Attachments.Add ThisWorkbook.FullName
'Mail anzeigen
Mail.Display
End Sub

VG, Ralf
Anzeige
AW: Serienmail
03.03.2011 15:37:54
kg36304
Eine Frage habe ich noch kann ich bzw. was muss ich machen um bei der erzeugten Mail meine Signatur von Outlook anzuhängen?
Es gibt da wohl den ein oder anderen Post aber ich weiß nicht genau wo welcher Befehl hin kommt.
Es ist halt wichtig das die Signatur aus Outlook genommen wird, da das Dokument an verschiedenen Arbeitsplätzen genutzt wird. Sonnst hätte ich es einfach in den Body geschrieben.
Danke
Kai
AW: Serienmail
04.03.2011 10:35:17
Ralf_P
Hallo Kai
ich weiß nicht genau ob es geht, einfach mal testen:
Sub Mail()
Dim outl, Mail As Object
Set outl = CreateObject("Outlook.Application")
Set Mail = outl.CreateItem(0)
Mail.Subject = "Rubriknummer" & " " & Range("B11").Value
Mail.To = Range("A1").Value & "; " & Range("a3").Value
'Mail.CC = "mail Adresse"
'Mail.BCC = "mailadresse"
'Wichtigkeit Hoch (1 = normal, 0 = niedrig)
Mail.Importance = 2
'Standardtext
Mail.body = "Hallo," & vbCrLf & vbCrLf & _
"Anbei eine Rubriknummeranforderung." & vbCrLf & vbCrLf & _
"Thema:" & " " & Range("B11").Value & vbCrLf & vbCrLf & _
"ET/s:" & vbCrLf & vbCrLf & _
"" & Range("B5").Value & ":   " & Range("B8").Value & vbCrLf & _
"" & Range("c5").Value & ":   " & Range("c8").Value & vbCrLf & _
"" & Range("d5").Value & ":   " & Range("d8").Value & vbCrLf & _
"" & Range("e5").Value & ":   " & Range("e8").Value & vbCrLf & _
"" & Range("f5").Value & ":   " & Range("f8").Value & vbCrLf & _
"" & Range("g5").Value & ":   " & Range("g8").Value & vbCrLf & _
"Format" & ":   " & Range("b14").Value & vbCrLf & vbCrLf & _
"Mit freundlichen Grüssen" & vbCrLf & vbCrLf & _
"aus dem Vogelsberg" & vbCrLf & vbCrLf
'oder: die aktive Exceldatei als Anhang mitsenden...
'Mail.Attachments.Add ThisWorkbook.FullName
With Mail
.GetInspector ' sorgt für die Signatur
.Display 'Mail anzeigen
End With
End Sub

VG, Ralf
Anzeige
AW: Serienmail
09.03.2011 08:32:52
kg36304
Hallo Ralf,
das hat geklappt, aber erst nach dem ich den Mailbody Eintrag entfernt habe.
Scheinbar kommt es da zu verwirrungen. Ist aber nicht so tragisch, da der Body Text individuell gestaltet wird, deshalb wird die Mail auch nur angezeigt und dann gesendet.
Ich habe aber noch ein größeres Problem endeckt. In meiner Excel Liste sind natürlich noch mehr Einträge, unter anderem Kundennummern, PLZ usw. wenn ich nun den Filter einsetze um nach PLZ zu filtern und dann nur die e-Mails aus der gefilterten Tabelle haben möchte, geht dies nicht, Excel nimmt dann trotzdem alle Einträge, auch die vom Filter ausgeblendeten. Wie kann ich das umgehen ?
Ich hoffe ich habe es verständlich erklärt. Ansonsten muss ich sagen, dass alles super funktioniert.
Danke
Kai
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige