automatische Mail
30.09.2020 12:14:00
Hokweb
ich möchte aus einer Arbeitsmappe eine Mail automatisch kreiiren. Die funktioniert alles soweit recht gut nur der Text welcher als HTML eingefügt wird steht mittig in der Mail, angenehmer wäre dieser würde auf der linken Seite in die Mail eingefügt werden.
hier der verwendete CODE
Sub senMailNeusäure()
'automatische E-Mail senden
Dim strBetreff As String
Dim strEMail As String
Dim strInhalt As String
Dim strPfadAnhang As String
Dim zeile As Integer
Dim olOldBody As String
'Dim MyClpObj As DataObject
' Set MyClpObj = New DataObject
'zeile = ActiveCell.Row
strBetreff = Worksheets("Daten").Range("B47").Value
strEMail = Worksheets("Daten").Range("B45").Value
strEMailCC = Worksheets("Daten").Range("EB6").Value
strInhalt = RangeToHTML(Worksheets("Daten"), Worksheets("Daten").Range("A48:K52"))
'
Public Function E_Mail_versenden(strEMail As String, strBetreff As String, strInhalt As String, _
_
_
_
_
_
_
strPfadAnhang)
Dim outl As Object
Dim Mail As Object
'Step: Neue E-Mail Nachricht erstellen
Set outl = CreateObject("Outlook.Application")
With outl.CreateItem(0)
.GetInspector.Display
olOldBody = .htmlbody
.To = strEMail
.CC = strEMailCC
.Subject = strBetreff
.htmlbody = strInhalt & "
" & olOldBody
'.Attachments.Add strPfadAnhang
End With
Set outl = Nothing
Set Mail = Nothing
MsgBox "Die E-Mail wurde soeben an " & strEMail & " & " & strEMailCC & " versendet!"
End Sub
Private Function RangeToHTML(objSheet As Worksheet, objRange As Range) As String
' Auswahl in HTML umwandeln
Dim strFilename As String
strFilename = Environ$("TEMP") & "/" & Format(Now, "dd-mm-yyyy_hh-mm-ss") & ".htm"
ActiveWorkbook.PublishObjects.Add( _
SourceType:=xlSourceRange, _
Filename:=strFilename, _
Sheet:=objSheet.Name, _
Source:=objRange.Address, _
HtmlType:=xlHtmlStatic).Publish True
RangeToHTML = CreateObject("Scripting.FileSystemObject"). _
GetFile(strFilename).OpenAsTextStream(1, -2).ReadAll
Kill strFilename
End Function