Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Mailversand mit Anhang

Mailversand mit Anhang
10.08.2008 09:44:49
Tom
Hallo zusammen,
habe eigentlich genau das im Archiv gefunden, was ich wollte - Mailversand an viele Empfänger.
Habe es auch etwas angepaßt. https://www.herber.de/bbs/user/54483.xls
Was mir jetzt noch fehlt, ist, dass ich gerne eine Datei aus dem Verzeichnis
(C:\Dokumente und Einstellungen\All Users\Dokumente\Eigene Bilder\Geburtstag1.jpg)
anhängen würde.
Hat jemand ne Idee?
Wäre echt super!
Gruß und Danke vorab
TOM

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Mailversand mit Anhang
10.08.2008 09:57:00
Martin
Hallo Tom,
probier mal folgenden Code:

Sub Excel_Serienmail_via_Outlook_Senden()
Dim OutApp As Object, Mail As Object
Dim i As Integer
Dim Nachricht
For i = 1 To 10 'Anzahl der Mails
'Variablen müssen bei jeder Schleife neu initalisiert werden
Set OutApp = CreateObject("Outlook.Application")
Set Nachricht = OutApp.CreateItem(0)
With Nachricht
.To = Cells(i, 1) 'Adresse
.Subject = Cells(i, 2) 'Betreffzeile
.AddAttachment "C:\Dokumente und Einstellungen\All Users\Dokumente\Eigene Bilder\ _
Geburtstag1.jpg"
.Body = Cells(i, 3) & Chr$(10) & Chr$(10) & Cells(i, 4) & Chr$(10) & Chr$(10) &  _
Cells(i, 5) 'Sendetext
'Hier wird die Mail gleich in den Postausgang gelegt
'und die Sicherheitsabfrage muss jedesmall bestätigt werden
'.Send
'Hier wird die Mail "angezeigt"
'aber gleich versendet,... OHNE Sicherheitsabrage
.Display
SendKeys "%s", True
End With
'Variablen zurücksetzen sonst geht es nicht
Set OutApp = Nothing 'CreateObject("Outlook.Application")
Set Nachricht = Nothing 'OutApp.CreateItem(0)
Application.Wait (Now + TimeValue("0:00:01"))
Next i
End Sub


Viele Grüße
Martin

Anzeige
AW: Mailversand mit Anhang
10.08.2008 10:08:37
Tom
Hallo Martin,
danke für die rasche Anhtwort - funktioniert so leider so nicht. Wird immer Fehler genau in dieser neuen Zeile gemeldet ...
Vielleicht hast Du noch ne andere Idee.
Gruß
TOM

AW: Mailversand mit Anhang
10.08.2008 10:26:53
Martin
Okay, neuer Versuch:

Sub Excel_Serienmail_via_Outlook_Senden()
Dim OutApp As Object, Mail As Object
Dim i As Integer
Dim Nachricht
For i = 1 To 10 'Anzahl der Mails
'Variablen müssen bei jeder Schleife neu initalisiert werden
Set OutApp = CreateObject("Outlook.Application")
Set Nachricht = OutApp.CreateItem(0)
With Nachricht
.To = Cells(i, 1) 'Adresse
.Subject = Cells(i, 2) 'Betreffzeile
.attachments.Add "C:\Dokumente und Einstellungen\All Users\Dokumente\Eigene Bilder\  _
Geburtstag1.jpg"
.Body = Cells(i, 3) & Chr$(10) & Chr$(10) & Cells(i, 4) & Chr$(10) & Chr$(10) &  _
Cells(i, 5) 'Sendetext
'Hier wird die Mail gleich in den Postausgang gelegt
'und die Sicherheitsabfrage muss jedesmall bestätigt werden
'.Send
'Hier wird die Mail "angezeigt"
'aber gleich versendet,... OHNE Sicherheitsabrage
.Display
SendKeys "%s", True
End With
'Variablen zurücksetzen sonst geht es nicht
Set OutApp = Nothing 'CreateObject("Outlook.Application")
Set Nachricht = Nothing 'OutApp.CreateItem(0)
Application.Wait (Now + TimeValue("0:00:01"))
Next i
End Sub


Viel Erfolg!

Anzeige
AW: Mailversand mit Anhang
10.08.2008 10:52:22
Tom
Hi Martin,
da fängt der Sonntag doch gleich super an - vielen Dank!
Kleine Zusatzfrage: GMeinst Du das es möglich ist, jeder Mailadresse einen anderen Dateianhang zuzuordnen - könnte dann z.B. in Spalte F als Hyperlink stehen ...
Nur, wenn es nicht zu viel Aufwand ist.
Gruß und danke nochmals
TOM

AW: Mailversand mit Anhang
10.08.2008 11:10:00
Martin
Hallo Tom,
das dürfte eigentlich kein Problem sein. Mache es doch so, wie Du es bereits sonst mit der Schleife gelöst hast:
Wenn der Link als Textform in der Zelle steht:
.attachments.Add Cells(i, 6)
... oder wenn die Zelle direkt ein Hyperlink enthält:
.attachments.Add Cells(i, 6).Hyperlinks(1).Address
Viele Grüße

Anzeige
AW: Mailversand mit Anhang
10.08.2008 11:32:02
Tom
Hallo Martin,
wenn ich in Spalte F den Hyperlink C:\Dokumente und Einstellungen\Tom.TOM1\Desktop\Geb1.jpg eingebe, kommt die meldung, dass diese Datei hier nicht gefunden werden kann. Ich habe den Pfad aber aus den Eigenschaften des Bildes kopiert ....

AW: Mailversand mit Anhang
10.08.2008 11:46:45
Martin
Hallo Tom,
das wundert mich allerdings auch. Probiere mal bitte folgende drei Sachen:
1. Verlinke die Zelle direkt mit der anzuhängenden Datei (Strg+k oder mit "Einfügen" und "Hyperlink...") und nutze .attachments.Add Cells(i, 6).Hyperlinks(1).Address
2. Ohne Hyperlink ".attachments.Add Cells(i, 6).Text" verwenden
3. Kontrolliere per Makro, ob der Dateipfad stimmt. Markiere die betreffende Zelle und starte folgendes Makro:

Sub Kontrolle_Dazteipfad()
If Dir(ActiveCell.Text) = "" Then
MsgBox "Der Dateipfad kann nicht gefunden werden!"
Else
MsgBox "Der Dateipfad stimmt!"
End If
End Sub


Oder falls Pfad als Hyperlink in die Zelle eingefügt ist:


Sub Kontrolle_Dazteipfad()
If Dir(ActiveCell.Hyperlinks(1).Address) = "" Then
MsgBox "Der Dateipfad kann nicht gefunden werden!"
Else
MsgBox "Der Dateipfad stimmt!"
End If
End Sub


Viel Erfolg.

Anzeige
AW: Mailversand mit Anhang
10.08.2008 11:57:24
Tom
1. Verlinke die Zelle direkt mit der anzuhängenden Datei (Strg+k oder mit "Einfügen" und "Hyperlink...") und nutze .attachments.Add Cells(i, 6).Hyperlinks(1).Address -- Genauso ausgeführt, Dateipfad nicht gefunden
2. Ohne Hyperlink ".attachments.Add Cells(i, 6).Text" verwenden -- funktioniert nicht
3. Kontrolliere per Makro, ob der Dateipfad stimmt. Markiere die betreffende Zelle und starte folgendes Makro -- DATEIPFAD IST KORREKT
Kurios oder?

AW: Mailversand mit Anhang
10.08.2008 11:59:05
Tom
Anbei nochmal die "neue" Datei: https://www.herber.de/bbs/user/54486.xls
Evtl. findest Du den Fehler so schneller ...
Danke
TOM

Anzeige
AW: Mailversand mit Anhang
10.08.2008 12:57:59
Martin
Hallo Tom,
leider habe ich jetzt keine Zeit mehr. Ich habe aber herausbekommen warum die Hyperlink-Funktion nicht funktioniert: Der Dateipfad des Anhangs wird relativ statt absolut übergeben:
"..\..\All Users\Dokumente\Eigene Bilder\Beispielbilder\Winter.jpg" statt mit "C:\Dokumente und Einstellungen" usw. zu beginnen.
Leider habe ich kein Outlook auf meinem Rechner installiert und kann das Makro daher nicht testen. Gib mir mal Deine Email-Adresse, damit ich mich später damit beschäftigen kann.
Probiere mal bitte noch ".attachments.Add Trim(Cells(i, 6).Text)
Viele Grüße
Martin

Anzeige
AW: Mailversand mit Anhang
10.08.2008 19:13:00
Tom
Hallo Martin,
.attachments.Add Trim(Cells(i, 6).Text) funktioniert !!!
Super!
Wenn ich dann in Spalte G auch noch einen Hyperlink setze, funktioniert dieser Zusatz auch noch:
With Nachricht
.To = Cells(i, 1) 'Adresse
.Subject = Cells(i, 2) 'Betreffzeile
.attachments.Add Trim(Cells(i, 6).Text)
.attachments.Add Trim(Cells(i, 7).Text)
Wehe aber, im Spalte G ist die Zelle leer ..., dann bricht es ab.
Kann man das variabel gestalten (auch für weitere Spalten H, I, J usw) ?
Jetzt hast Du aber wirklich viel für mich getan!
Danke vielmals
TOM - privat: fraggle1973@web.de
Anzeige

7 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige