Makro > E-Mail > Wort WAHR im Text
#1
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
Top
#2
Moin!
Ist Deine Zwischenablage defekt?  :21:
Poste mal den gesamten Code, sinnvollerweise in Code-Tags.

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Top
#3
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
Top
#4
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.
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Top
#5
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
Top
#6
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
Gruß Stefan
Win 10 / Office 2016
[-] Folgende(r) 1 Nutzer sagt Danke an Steffl für diesen Beitrag:
  • Brotmaschine
Top
#7
:15:
Tja, schon peinlich so etwas zu übersehen, da hätte ich auch irgendwie drauf kommen müssen.

Danke.
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste