Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

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
Antworten 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)
Antworten 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
Antworten 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)
Antworten 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
Antworten 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
Antworten Top
#7
:15:
Tja, schon peinlich so etwas zu übersehen, da hätte ich auch irgendwie drauf kommen müssen.

Danke.
Antworten Top


Gehe zu:


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