Outlook-Mail mit mehreren Daten, Diagrammen aus Excel
Ich ziehe mir 8 Tabellen in eine Excel-Datei und verarbeite sie dort, das Ergebnis sind dann 12 Bereiche, Diagramme und Bilder die ich über Mails verteile. Einen Bereich zu verschicken funktioniert problemlos, mehrere mit TExt in eine Mail zu packen bekomme ich nicht hin.
Habe folgendes Problem:
Mit Excel VBA soll aus der Excel-Datei eine Mail generiert werden:
ein Text "ertwerzwrez:",
dann aus Sheet 1 soll der Bereich C5:I39 in die Mail kopiert werden,
dann der Text "rtzrtzzzuwer",
dann aus Sheet 1 das Diagramm 1 als Bild eingefügt werden,
dann der Text "nertzsdfgerzetrhrfgth",
dann aus Sheet 2 der Bereich B4:Q73 als Bild eingefügt werden,
dann der Text "fghetzwerg36erg",
dann aus Sheet 4 der Bereich O7:V14 in die Mail kopiert werden.
Hab schon vieles probiert, bringe aber die einzelnen Elemente nciht in die richtige Reihenfolge untereinander.......
Habe folgendes Problem:
Mit Excel VBA soll aus der Excel-Datei eine Mail generiert werden:
ein Text "ertwerzwrez:",
dann aus Sheet 1 soll der Bereich C5:I39 in die Mail kopiert werden,
dann der Text "rtzrtzzzuwer",
dann aus Sheet 1 das Diagramm 1 als Bild eingefügt werden,
dann der Text "nertzsdfgerzetrhrfgth",
dann aus Sheet 2 der Bereich B4:Q73 als Bild eingefügt werden,
dann der Text "fghetzwerg36erg",
dann aus Sheet 4 der Bereich O7:V14 in die Mail kopiert werden.
Hab schon vieles probiert, bringe aber die einzelnen Elemente nciht in die richtige Reihenfolge untereinander.......
Sub MailSenden()
Dim OutApp As Object
Dim OutMail As Object
Dim rng1 As Range
Dim rng2 As Range
Dim rng3 As Range
' Create a new Outlook application
Set OutApp = CreateObject("Outlook.Application")
' Create a new email
Set OutMail = OutApp.CreateItem(0)
' Set the email subject
OutMail.Subject = "Aktuelle Daten"
' Set the email body
OutMail.Body = "ertwerzwrez:" & vbCrLf
' Copy and paste data from Sheet1 to the email body
Set rng1 = ThisWorkbook.Sheets("Sheet1").Range("C5:I39")
rng1.Copy
OutMail.GetInspector.WordEditor.Range.Paste
' Add text for Entwicklung im lfd. Monat:
OutMail.Body = OutMail.Body & vbCrLf & "rtzrtzzzuwer:" & vbCrLf
' Copy and paste data from Sheet1 to the email body
Set rng2 = ThisWorkbook.Sheets("Sheet1").Range("K50:Z70")
rng2.Copy
OutMail.GetInspector.WordEditor.Range.Paste
' Add text for Umsatz/WE zum Plan:
OutMail.Body = OutMail.Body & vbCrLf & "nertzsdfgerzetrhrfgth:" & vbCrLf
' Insert an image from Sheet2 into the email body
Set rng3 = ThisWorkbook.Sheets("Sheet2").Range("B4:Q73")
' Save the range as a picture and insert it into the email body
rng3.CopyPicture xlScreen, xlPicture
OutMail.GetInspector.WordEditor.Range.PasteAndFormat Type:=wdChartPicture
' Add text for EP:
OutMail.Body = OutMail.Body & vbCrLf & "fghetzwerg36erg" & vbCrLf
' Copy and paste data from Sheet4 to the email body
Set rng4 = ThisWorkbook.Sheets("Sheet4").Range("O7:V14")
rng4.Copy
OutMail.GetInspector.WordEditor.Range.Paste
' Display the email
OutMail.Display
End Sub
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 12758521363
Url: https://administrator.de/contentid/12758521363
Ausgedruckt am: 23.11.2024 um 22:11 Uhr
1 Kommentar
' ....
With OutMail
With .GetInspector.WordEditor.Range
.Collapse 0
.InsertAfter "A Text" & vbNewLine
.Collapse 0
.InsertAfter "another text" & vbNewLine
.Collapse 0
.Paste
' usw ......
End With
.Display
End With
RTFM