Email aus Excel 2010 mit VBa versenden
Hallo da draussen,
ich möchte in Excel 2010 eine Email versenden die nur einen Betreff und eine Textnachricht enthält.
Bisher habe ich das so gelöst:
Sheets("Bestellform").Select
Sheets("Bestellform").Copy
ActiveWorkbook.SendMail "xxx.yyyy@abcde.de", "Ersatzteilbestellung"
Application.DisplayAlerts = False
ActiveWindow.Close
Application.DisplayAlerts = True
hier habe ich aber zwei Probleme. Zum einen wird dir ausgewählte Tabelle mitgeschickt und zum anderen möchte ich den Empfänger variabel halten.
Meine Fragen daher sind:
- wie kann ich eine einfache Email versenden die nur einen Betreff und eine Textnachricht enthält?
- wie kann ich die Empfänger variabel gestallten?
ich möchte in Excel 2010 eine Email versenden die nur einen Betreff und eine Textnachricht enthält.
Bisher habe ich das so gelöst:
Sheets("Bestellform").Select
Sheets("Bestellform").Copy
ActiveWorkbook.SendMail "xxx.yyyy@abcde.de", "Ersatzteilbestellung"
Application.DisplayAlerts = False
ActiveWindow.Close
Application.DisplayAlerts = True
hier habe ich aber zwei Probleme. Zum einen wird dir ausgewählte Tabelle mitgeschickt und zum anderen möchte ich den Empfänger variabel halten.
Meine Fragen daher sind:
- wie kann ich eine einfache Email versenden die nur einen Betreff und eine Textnachricht enthält?
- wie kann ich die Empfänger variabel gestallten?
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 237242
Url: https://administrator.de/forum/email-aus-excel-2010-mit-vba-versenden-237242.html
Ausgedruckt am: 22.12.2024 um 20:12 Uhr
8 Kommentare
Neuester Kommentar
Hallo Gundelputz,
wenn du Outlook nutzt kannst du es so machen:
Falls du kein Outlook verwenden solltest kannst du die Mail auch direkt via CDO verschicken, ein Beispiel-Code dazu findest du hier:
Massen E-Mail-Versand aus VBA Excel - Outlook Sicherheitsmeldung
Grüße Uwe
wenn du Outlook nutzt kannst du es so machen:
Set objOutlook = CreateObject("Outlook.Application")
Set objMail = objOutlook.CreateItem(0)
With objMail
.To = "empfänger@email.de"
.Subject = "Betreff"
.Body = "Dein Body"
'Nachricht zur Kontrolle anzeigen
.Display
'Oder direkt senden
'.Send
End With
Massen E-Mail-Versand aus VBA Excel - Outlook Sicherheitsmeldung
Grüße Uwe
verbinde die Zeilen mit vbNewLine:
Anstatt vbNewLine lässt sich auch vbCrLf oder chr(13) für Zeilenumbrüche nutzen.
Das was du machst ist nur ein Zeilenumbruch im Quellcode, und nicht im Ausgabestring.
.Body = "Für folgendes Gerät wurde ein Toner bestellt." & vbNewLine & lbl_maschine_to_an.Caption & vbNewline & .............
Das was du machst ist nur ein Zeilenumbruch im Quellcode, und nicht im Ausgabestring.
Hallo Jens.
Sehen wir hier eigentlich nicht so gerne. Normalerweise machen wir hier einen neuen Thread dazu auf, schon im Interesse des TO! Bitte fürs nächste mal berücksichtigen. Merci.
Grüße Uwe
Sehen wir hier eigentlich nicht so gerne. Normalerweise machen wir hier einen neuen Thread dazu auf, schon im Interesse des TO! Bitte fürs nächste mal berücksichtigen. Merci.
Wenn ich als "Body" eine selection.copy in die Mail einfügen möchte, wie geht das denn?
Zum kopieren der aktuell selektierten Zellen und anschließendes Einfügen der Zwischenablage in eine Mail :Sub SendMyMail()
Set objOL = CreateObject("Outlook.Application")
' Neue Mail erstellen
Set objMail = objOL.CreateItem(0)
' Aktuell markierte Zellen kopieren
Selection.Copy
With objMail
.Subject = "testmail"
' Zwischenablage einfügen
.GetInspector().WordEditor.Range.Paste
' Mail anzeigen
.Display
End With
Set objOL = Nothing
End Sub