Live-Forum - Die aktuellen Beiträge
Datum
Titel
16.10.2025 11:16:26
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: bis zur letzten beschriebenen Zeile

bis zur letzten beschriebenen Zeile
04.08.2020 08:47:36
Thomas
Hallo
Ich nutze diesen Code, der auch das tut, was er soll.
Jetzt möchte ich, das der Bereich bis zur letzten beschriebenen Zeile versendet wird.
Leider fehlen mir die Kentnisse, wie ich diesen umschreiben muß.
Und, das er die Emailadresse aus dem Tabellenblatt "Bestellung" Zelle M3 nimmt.
Danke für Eure Hilfe
Gruß
Tommy
Option Explicit

Public Sub TableToMail()
Dim objOutlook As Object
Dim objMail As Object
Set objOutlook = CreateObject("Outlook.Application")
Set objMail = objOutlook.CreateItem(0)
With objMail
.to = "nepumuk@himmel.aa"
.Subject = "Auslastung vom " & CStr(Date)
.HTMLBody = RangeToHTML(ActiveSheet, ActiveSheet.Range("A1:E12"))
.Display    'nur Anzeigen
'        .Send       'direkt senden
End With
Set objMail = Nothing
Set objOutlook = Nothing
End Sub


Private Function RangeToHTML(objSheet As Worksheet, objRange As Range) As String
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

Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: bis zur letzten beschriebenen Zeile
04.08.2020 09:26:28
volti
Hallo Tommy,
so sollte es gehen:
Public Sub TableToMail() Dim objOutlook As Object Dim objMail As Object Set objOutlook = CreateObject("Outlook.Application") Set objMail = objOutlook.CreateItem(0) With objMail .To = "nepumuk@himmel.aa" .Subject = "Auslastung vom " & CStr(Date) .HTMLBody = RangeToHTML(ActiveSheet, ActiveSheet.Range("A1:E" _ & Cells(Rows.Count, "A").End(xlUp).Row)) .Display 'nur Anzeigen ' .Send 'direkt senden End With Set objMail = Nothing Set objOutlook = Nothing End Sub
viele Grüße aus Freigericht
Karl-Heinz

Anzeige
.To = sheets("Bestellung").Range("M3") owT
04.08.2020 13:10:57
Rudi
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige