Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1668to1672
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Bestimmten Tabellenbereich per Mail mit Signature

Bestimmten Tabellenbereich per Mail mit Signature
25.01.2019 06:15:16
Heidi
Guten Morgen,
ich bräuchte Hilfe. Wie kann ich in diesem Code einen bestimmten Tabellenbereich eingeben? Beispiel: A1:I90 ?
Der Code funktioniert, aber leider erscheint mein fester Bereich nicht in der Mail.
Code:

Sub Mail_Outlook_With_Signature_Html_1()
Dim OutApp As Object
Dim OutMail As Object
Dim strbody As String
Set OutApp = CreateObject("Outlook.Application")
Set OutMail = OutApp.CreateItem(0)
strbody = "
Dear Customer Ron de Bruin
" & _
"Please visit this website to download the new version.
" & _
"Let me know if you have problems.
" & _
Thank you"
On Error Resume Next
With OutMail
.Display
.To = "max.muster@musterman"
.CC = ""
.BCC = ""
.Subject = "This is the Subject line"
.HTMLBody = strbody & "
" & .HTMLBody
.Send
End With
On Error GoTo 0
Set OutMail = Nothing
Set OutApp = Nothing
End Sub
Dankeschön!

31
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Bestimmten Tabellenbereich per Mail mit Signature
25.01.2019 07:40:38
Nepumuk
Hallo Heidi,
teste mal:
Option Explicit

Public Sub Mail_Outlook_With_Signature_Html_1()
    
    Dim OutApp As Object
    Dim OutMail As Object
    
    Set OutApp = CreateObject("Outlook.Application")
    Set OutMail = OutApp.CreateItem(0)
    
    With OutMail
        .Display
        .To = "max.muster@musterman"
        .CC = ""
        .BCC = ""
        .Subject = "This is the Subject line"
        .HTMLBody = RangeToHtml("Tabelle1", "A1:I90") & .HTMLBody 'Tabellenname und Bereich anpassen !!!
        .Send
    End With
    
    Set OutMail = Nothing
    Set OutApp = Nothing
    
End Sub

Private Function RangeToHtml( _
        ByVal pvstrWorksheetName As String, _
        ByVal pvstrRangeAddress As String) As String

    
    Dim objFilesytem As Object, objTextstream As Object
    Dim objPublishObject As PublishObject
    Dim strFilename As String, strTempText As String
    
    strFilename = Environ$("temp") & "\" & _
        Format(Now, "dd-mm-yy_hh-mm-ss") & ".htm"
    
    Set objPublishObject = ThisWorkbook.PublishObjects.Add( _
        SourceType:=xlSourceRange, _
        Filename:=strFilename, _
        Sheet:=pvstrWorksheetName, _
        Source:=pvstrRangeAddress, _
        HtmlType:=xlHtmlStatic)
    Call objPublishObject.Publish(Create:=True)
    
    Set objFilesytem = CreateObject("Scripting.FileSystemObject")
    Set objTextstream = objFilesytem.GetFile(strFilename).OpenAsTextStream(1, -2)
    
    strTempText = objTextstream.ReadAll
    Call objTextstream.Close
    
    RangeToHtml = Replace(strTempText, "align=center x:publishsource=", _
        "align=left x:publishsource=")
    
    Set objPublishObject = Nothing
    Set objTextstream = Nothing
    Set objFilesytem = Nothing
    
    Call Kill(PathName:=strFilename)
    
End Function

Gruß
Nepumuk
Anzeige
AW: Bestimmten Tabellenbereich per Mail mit Signature
25.01.2019 08:03:47
Heidi
Hallo Nepumuk,
erst Mal vielen lieben Dank. Der Code funktioniert halb - die Signature erscheint, aber leider fehlt mir der Tabellenbereich A1:I80 zum Beispiel. Der erscheint in der Email dann nicht, aber warum?
Danke, vielleicht hast du eine Idee.
VG
Heidi
AW: Bestimmten Tabellenbereich per Mail mit Signature
25.01.2019 08:20:48
Nepumuk
Hallo Heidi,
kann ich nicht nachvollziehen. In meiner Mustermappe hat es funktioniert. Ich lade sie dir mal hoch:
https://www.herber.de/bbs/user/127088.xlsm
Gruß
Nepumuk
AW: Bestimmten Tabellenbereich per Mail mit Signature
25.01.2019 08:29:16
Heidi
Hallo,
jetzt hat es auch funktioniert. Eine kleine Frage hätte ich noch, gibt es die Möglichkeit im Code noch im Contentbereich der Email einen Text vorzugeben - so wie Introduction ...?
Beispiel:
Sehr geehrte Kollegen,
Dear Colleagues,
With OutMail
.Display
.To = "heidi.martin@siemens.com;PLM;heidi.martin@siemens.com"
.CC = "heidi.martin@siemens.com"
.BCC = ""
.Subject = "Kick-off: 8Dxx-x - project name / country - LIPROGIS XXXX"
Anzeige
AW: Bestimmten Tabellenbereich per Mail mit Signature
25.01.2019 08:39:28
Heidi
Hallo Nepumuk,
ich habe es fast geschafft, aber leider schreibt er mir den Text am Ende der Mail.
Ich würde dies gerne am Anfang der Mail schreiben.
With OutMail
.Display
.To = "max.mustermann@gmx.com;PLM"
.CC = "max.mustermann@gmx.com"
.BCC = ""
.Subject = "Kick-off: 8Dxx-x - project name / country - LIPROGIS XXXX"
.Body = "Hallo mein Name ist"
.HTMLBody = RangeToHtml("Projektmail", "A1:I60") & .HTMLBody 'Tabellenname und Bereich anpassen !!!
AW: Bestimmten Tabellenbereich per Mail mit Signature
25.01.2019 08:51:30
Nepumuk
Hallo Heidi,
so:
.HTMLBody = "Hallo mein Name ist<br><br>" & _
    RangeToHtml("Tabelle1", "A1:I90") & .HTMLBody

Gruß
Nepumuk
Anzeige
AW: Bestimmten Tabellenbereich per Mail mit Signature
25.01.2019 09:13:09
Heidi
Hallo,
klappt, aber wenn ich schalten möchte und den Code so erfasse:
.HTMLBody = "Hallo, anbei erhalten Sie die aktuellen Projektunterlagen zum unten genannten Projekt zum Zeitpunkt Kick-off (intern).
" & _
"Hello, mein"
" & _
dann klappt es nicht mehr, da mache ich wohl wieder was falsch. DANKE
AW: Bestimmten Tabellenbereich per Mail mit Signature
25.01.2019 09:23:10
Nepumuk
Hallo Heidi,
poste bitte die Zeile nochmal und setze sie diesmal in Code-Tags. Also die Zelle ins Eingabefenster des Forums kopieren, mit der Maus komplett markieren und dann über dem Eingabefenster den Button "Code ..." klicken. Die HTML-Formatierung zerschießt nämlich die Darstellung im Forum.
Gruß
Nepumuk
Anzeige
AW: Bestimmten Tabellenbereich per Mail mit Signature
25.01.2019 09:30:45
Heidi

.HTMLBody = "Hallo, anbei erhalten Sie die aktuellen Projektunterlagen zum unten genannten  _
Projekt zum Zeitpunkt Kick-off (intern).
" & _ "Hello, enclosed you will find the current project documents for the project mentioned below at _ the time of the kick-off (internal).
" & _ RangeToHtml("Projektmail", "A1:I60") & .HTMLBody
Hoffe, es kommt richtig an.
AW: Bestimmten Tabellenbereich per Mail mit Signature
25.01.2019 09:53:25
Heidi
Hallo Nepumuk,
könntest du hier vielleicht auch noch helfen, dann habe ich es geschafft.
Der bestimmte Bereich A1:I60 wird in der Email leicht nach rechts eingerückt angezeigt, kann man dies noch anpassen, damit es auch linksbündig angezeigt wird? DANKE
Userbild
Anzeige
AW: Bestimmten Tabellenbereich per Mail mit Signature
25.01.2019 10:20:21
Nepumuk
Hallo Heidi,
kopiere mal das Makro in eine Textdatei und lade die hoch.
Gruß
Nepumuk
AW: Bestimmten Tabellenbereich per Mail mit Signature
25.01.2019 13:19:04
Nepumuk
Hallo Heidi,
kein Problem :-)
ich kann das leider nicht nachvollziehen. War der Versatz in meiner Mustertabelle bei dir auch vorhanden?
Gruß
Nepumuk
AW: Bestimmten Tabellenbereich per Mail mit Signature
25.01.2019 13:20:20
Heidi
Hallöchen,
oje, dies weiß ich gar nicht mehr. Kriegt man den wieder raus?
Danke Dir :-)
AW: Bestimmten Tabellenbereich per Mail mit Signature
25.01.2019 13:25:36
Nepumuk
Hallo Heidi,
na dann lade die Mappe nochmal runter und schau wie es aussieht.
Gruß
Nepumuk
Anzeige
AW: Bestimmten Tabellenbereich per Mail mit Signature
25.01.2019 13:31:41
Heidi
Hallöchen, habs probiert - leider ist es da auch scho so.
Kannst du hier noch was ändern?
Wäre super toll.
AW: Bestimmten Tabellenbereich per Mail mit Signature
25.01.2019 13:51:07
Nepumuk
Hallo Heidi,
starte das Makro Test in der angefügten Mappe. Auf deinem Desktop wird eine HTM-Datei gespeichert. Die packst du in einen ZIP-Ordner und lädst sie hoch. Ich muss mir das mal genauer ansehen warum das bei dir nicht klappt.
https://www.herber.de/bbs/user/127132.xlsm
Gruß
Nepumuk
AW: Bestimmten Tabellenbereich per Mail mit Signature
25.01.2019 14:17:17
Heidi
Hallo, ich kriege die Zip-Datei irgendwie nicht hin.
Hoffe du kannst damit was anfangen.
DANKE
https://www.herber.de/bbs/user/127133.htm
Anzeige
AW: Bestimmten Tabellenbereich per Mail mit Signature
25.01.2019 14:36:06
Nepumuk
Hallo Heidi,
tut mir leid, aber ich kann keinen Fehler finden. Ich habe keine Ahnung was da bei dir anders läuft als bei mir. Das würde ich nur herausfinden, wenn ich mich an deinen Rechner setzen könnte.
Gruß
Nepumuk
AW: Bestimmten Tabellenbereich per Mail mit Signature
25.01.2019 14:40:32
Heidi
Kann es damit zusammenhängen, dass ich am Laptop arbeite?
AW: Bestimmten Tabellenbereich per Mail mit Signature
25.01.2019 14:43:01
Nepumuk
Hallo Heidi,
nein, Windows-Rechner ist Windows-Rechner.
Gruß
Nepumuk
AW: Bestimmten Tabellenbereich per Mail mit Signature
25.01.2019 14:45:02
Heidi
Hallo du,
ich habe dir den Code nochmal geschickt, vielleicht fällt dir doch noch was auf, was falsch sein könnte, wenn nicht, dann lasse ich es erst Mal so.
Weißt du wie ich eine Zeile im Html-Body "kursiv" schreiben kann?
Option Explicit
Public Sub Mail_Outlook_With_Signature_Html_1()
Dim OutApp As Object
Dim OutMail As Object
Set OutApp = CreateObject("Outlook.Application")
Set OutMail = OutApp.CreateItem(0)
With OutMail
.Display
.To = "heidi.martin@siemens.com;PLM;heidi.martin@siemens.com"
.CC = "heidi.martin@siemens.com"
.BCC = ""
.Subject = "Kick-off: 8Dxx-x - project name / country - LIPROGIS XXXX"
.HTMLBody = "Hallo, anbei erhalten Sie die aktuellen Projektunterlagen zum unten  _
genannten Projekt zum Zeitpunkt Kick-off (intern).
" & _ "Hello, enclosed you will find the current project documents for the project mentioned _ below at the time of the kick-off (internal).
" & _ RangeToHtml("Projektmail", "A1:I60") & .HTMLBody End With Set OutMail = Nothing Set OutApp = Nothing End Sub

Private Function RangeToHtml( _
ByVal pvstrWorksheetName As String, _
ByVal pvstrRangeAddress As String) As String
Dim objFilesytem As Object, objTextstream As Object
Dim objPublishObject As PublishObject
Dim strFilename As String, strTempText As String
strFilename = Environ$("temp") & "\" & _
Format(Now, "dd-mm-yy_hh-mm-ss") & ".htm"
Set objPublishObject = ThisWorkbook.PublishObjects.Add( _
SourceType:=xlSourceRange, _
Filename:=strFilename, _
Sheet:=pvstrWorksheetName, _
Source:=pvstrRangeAddress, _
HtmlType:=xlHtmlStatic)
Call objPublishObject.Publish(Create:=True)
Set objFilesytem = CreateObject("Scripting.FileSystemObject")
Set objTextstream = objFilesytem.GetFile(strFilename).OpenAsTextStream(1, -2)
strTempText = objTextstream.ReadAll
Call objTextstream.Close
RangeToHtml = Replace(strTempText, "align=center x:publishsource=", _
"align=left x:publishsource=")
Set objPublishObject = Nothing
Set objTextstream = Nothing
Set objFilesytem = Nothing
Call Kill(PathName:=strFilename)
End Function
1000 Dank
Anzeige
AW: Bestimmten Tabellenbereich per Mail mit Signature
25.01.2019 14:55:06
Nepumuk
Hallo Heidi,
kursiv geht so:
<i>jetzt kommt ein kursiver Text</i>

Damit die Tabelle linksbündig angezeigt wird ist diese Funktion notwendig:
Replace(strTempText, "align=center x:publishsource=", "align=left x:publishsource=")

Die habe ich auf deine HTM angewendet und sie hat einwandfrei funktioniert.
Gruß
Nepumuk
Anzeige
AW: Bestimmten Tabellenbereich per Mail mit Signature
25.01.2019 15:20:34
Heidi
Hallo,
der Code damit der Bereich links angezeigt wird, ist ja im Code enthalten.
Komisch nur, dass ich es anders sehe.
Habe jetzt versucht diesen Text kursiv zu schreiben, aber ich mache irgendwas falsch:
"Hello, enclosed you will find the current project documents for the project mentioned _
below at the time of the kick-off (internal).
Habe den Text so eingegeben, aber dann kommt Fehler:
"Hello, enclosed you will find the current project documents for the project mentioned _
below at the time of the kick-off (internal).

AW: Bestimmten Tabellenbereich per Mail mit Signature
25.01.2019 15:23:02
Heidi
Hallo Nepumuk,
ich habs geschafft. Danke Dir.
Aber kannst mir noch sagen wie ich den Text in grau hinterlegen könnte? Sorry!
AW: Bestimmten Tabellenbereich per Mail mit Signature
25.01.2019 16:02:38
Nepumuk
Hallo Heidi,
teste mal so:
.HTMLBody = "Hallo, anbei erhalten Sie die aktuellen Projektunterlagen " & _
    "zum unten genannten Projekt zum Zeitpunkt Kick-off (intern).<br>" & _
    "<span style='background:silver;mso-highlight:silver'>" & _
    "<i>Hello, enclosed you will find the current project documents for the " & _
    "project mentioned below at the time of the kick-off (internal).</i></span><br>" & _
    RangeToHtml("Projektmail", "A1:I60") & .HTMLBody

Gruß
Nepumuk
AW: Bestimmten Tabellenbereich per Mail mit Signature
25.01.2019 16:08:03
Heidi
Ich danke dir 1000 Mal.
Anstatt den Hintergrund grau zu färben würde ich gerne die Schriftfarbe hellgrau hinterlegen. Ich hatte mich verschrieben.
Tut mir leid, dann habe ich keine Fragen mehr, hoffe ich. :-)
AW: Bestimmten Tabellenbereich per Mail mit Signature
25.01.2019 16:14:05
Nepumuk
Hallo Heidi,
dann so:
.HTMLBody = "Hallo, anbei erhalten Sie die aktuellen Projektunterlagen " & _
    "zum unten genannten Projekt zum Zeitpunkt Kick-off (intern).<br>" & _
    "<font color='#808080'><i>Hello, enclosed you will find the current project documents " & _
    "for the project mentioned below at the time of the kick-off (internal).</i></font><br>" & _
    RangeToHtml("Projektmail", "A1:I60") & .HTMLBody

Gruß
Nepumuk
AW: Bestimmten Tabellenbereich per Mail mit Signature
25.01.2019 16:23:31
Heidi
Super, vielen lieben Dank für die tolle Hilfe.
VG und ein schönes WE
Heidi
AW: Bestimmten Tabellenbereich per Mail mit Signature
28.01.2019 12:05:43
Heidi
Hallo Nepumuk,
eine kleine Frage habe ich doch noch gefunden.
Wie kann ich bei dem Text "Laufwerk FS2761001" .... einen Link auf ein Laufwerk hinterlegen?
Code:
"Diese können Sie unter folgendem Link auf dem Laufwerk FS2761001 aufrufen.
" & _
"They can be accessed via the following link on the drive FS2761001." & _
"

" & _
RangeToHtml("Projektmail", "A1:I60") & .HTMLBody
Danke und Gruß
Heidi
AW: Bestimmten Tabellenbereich per Mail mit Signature
28.01.2019 13:52:31
Nepumuk
Hallo Heidi,
wie schon geschrieben, ich bin kein HTML-Spezialist. Stell die Frage als neue Frage im Forum, vielleicht weiß es ja jemand. Ich leider nicht, und die Suche im Netz hat mich auch nicht weiter gebracht.
Gruß
Nepumuk

303 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige