Clever-Excel-Forum

Normale Version: Makro > E-Mail > Wort WAHR im Text
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo zusammen,

ich haben mich schon dumm und dusselig gesucht aber keine Lösung gefunden, ich glaube auch das es keine Lösung für mein Problem gibt Dodgy

Über Excel wird eine E-Mail erzeugt mit sehr viel Text darin.
Beim Test mit .DISPLAY wird die E-Mail korrekt und gefüllt angezeigt und kann abgeschickt werden.
Damit es hier nicht zu Fehler kommt weil die neue E-Mail ggf. im Hintergrund erzeugt wird und vergessen wird, soll mit . send direkt verschickt werden.

Dies hat soweit geklappt, jedoch war die E-Mail dann ohne Text. Problem, das Makro ist zu schnell und schickt die E-Email ab bevor der Text eingefügt wurde.
Daher haben ich eine Pause von einer Sekunde eingefügt.
Damit funktioniert es nun, da die Pause aber im einzufügendem Text eingebaut ist, steht unter der Faxnummer immer das Wort WAHR. Wenn ich die Funktion Application.Wait entfernen, ist auch das Wort WAHR nicht mehr im Text.

Wie bekomme ich das gelöst? :19:

Vielen Dank schon jetzte für die Hilfe bzw. Vorschläge.

"E-Mail: TEST
" & _
"Tel.: TEST
" & _
"Fax:  TEST
" & _
Application.Wait(Now + TimeValue("0:00:1"))
.send
ActiveWorkbook.Close (False)
ThisWorkbook.Close Savechanges:=False
Application.DisplayAlerts = True
End With
End Sub
Moin!
Ist Deine Zwischenablage defekt?  :21:
Poste mal den gesamten Code, sinnvollerweise in Code-Tags.

Gruß Ralf
Hier der Code Angel


Code:
Set olApp = CreateObject("Outlook.Application") '
With olApp.CreateItem(0)
.SentOnBehalfOfName = "TEST@online.de"
olOldBody = .htmlbody
.Attachments.Add "C:\Laufwerk\TEST_PF.xlsx"
.To = "" & Range("A39")
.cc = "TEST2@online.de;" & Range("B32")
.Importance = 2
.Subject = "TEST " & Range("B25") & ", " & Range("B15") & " ( " & Range("F41") & " / " & Range("B14") & " ) OZ " & Range("C4") & " Filiale " & Range("B10") & "         Erstellt: " & Range("H41")
.htmlbody = "<p style='font-family:arial;font-size:15'>" & "Sehr geehrte Damen und Herren,</b><br>" & _
" <br>" & _
" <b> " & Range("B24") & ", " & Range("B15") & " </b> zur weiteren Verwendung. </b><br>" & _
" <br>" & _
"<b>" & Range("A26") & "</b> " & Range("B25") & ", " & Range("B26") & " </b><br>" & _
" <br>" & _
" <b> TEST " & Range("B10") & "</b> ( " & Range("F12") & " ) </b><br>" & _
"" & Range("B11") & ", " & Range("B12") & " " & Range("B13") & "</b><br>" & _
" Telefon: " & Range("B21") & ", Ast-Nr.: " & Range("B27") & "</b><br>" & _
" <br>" & _
"<b> Öffnungszeiten:  Vormittag / Nachmittag </b><br>" & _
"Montag von " & Range("T2") & "</b><br>" & _
"Dienstag von " & Range("U2") & "</b><br>" & _
"Mittwoch von " & Range("V2") & "</b><br>" & _
"Donnerstag von " & Range("W2") & "</b><br>" & _
"Freitag von  " & Range("X2") & "</b><br>" & _
"Samstag von " & Range("Y2") & "</b><br>" & _
"<br>" & _
"<b>Mit freundlichen Grüßen </b><br>" & _
"<br>" & _
"<b>TEST</b><br>" & _
"E-Mail: TEST <br>" & _
"Tel.: TEST <br>" & _
"Fax:  TEST <br>" & _
Application.Wait(Now + TimeValue("0:00:1"))
.send
ActiveWorkbook.Close (False)
ThisWorkbook.Close Savechanges:=False
Application.DisplayAlerts = True
End With
End Sub
Hallöchen,

deine Verkettungen und Zeilenumbrüche im Code für den htmlbody sehen recht wirr aus. Hier mal das Prinzip:

Code:
.htmlbody = "abc" & _
"def" & _
"geh" & _
... usw.
Ja, das liegt aber hier am Forum, nach dem Einfügen sah es so aus.

Kann denn zum Problem keiner wat sagen? Entweder es ist zu schwierig oder zu einfach das es schon fast peinlich ist. Blush
Hallo,

du verknüpfst die Codezeile Application mit dem Html.Body durch den Unterstrich

Code:
.htmlbody = "

" & "Sehr geehrte Damen und Herren,
" & _
"
" & _
" & _
"Samstag von " & Range("Y2") & "
" & _
"
" & _
"Mit freundlichen Grüßen
" & _
"
" & _
"TEST
" & _
"E-Mail: TEST
" & _
"Tel.: TEST
" & _
"Fax:  TEST"
Application.Wait(Now + TimeValue("0:00:1"))
.send
:15:
Tja, schon peinlich so etwas zu übersehen, da hätte ich auch irgendwie drauf kommen müssen.

Danke.