Endlich habe ich gefunden was ich gesucht habe. Mein Code funktioniert soweit wie gewünscht. Ich löse den Code über eine UF mit einem CommandButton aus. Starte ich die UF und klicke den Button zum ersten mal, so funktioniert alles wie gewünscht.
Klicke ich den Butten ein zweites mal, erscheint die Fehlermeldung "Laufzeitfehler 462 Der Remote-Server-Computer existiert nicht oder ist nicht verfügbar" bei der Zeile
ActiveDocument.SaveAs strFileName, wdFormatHTML, , , , , , , SaveNativePictureFormat:=True
Sieht jemand den Fehler oder hat jemand eine andere Lösung?Besten Dank für Eure Hilfe und einen schönen Tag.
Sub Word001()
Dim ObjWinWord As Object
Dim ObjDocWord As Object
Dim strSuchbegriff_Anfang As String
Dim strSuchbegriff_Ende As String
Dim strTextInDoc As String
Dim strTextGefunden As String
Const wdWindowStateMaximize As Long = 1
'Suchbegriffe für Anfang und Ende vorgeben!
strSuchbegriff_Anfang = "Hallo da draussen!"
strSuchbegriff_Ende = "Freundliche Grüsse"
Set ObjWinWord = CreateObject("Word.Application")
ObjWinWord.Visible = True
ObjWinWord.WindowState = wdWindowStateMaximize
ObjWinWord.Activate
Set ObjDocWord = ObjWinWord.Documents.Open("C:\Users\User\Dropbox\VBA\E-mail\Text001.docx")
' Set ObjDocWord = ObjWinWord.Documents.Open("C:\Users\Nathi Noel Dänu\Dropbox\VBA\E-mail\Text001.docx")
strTextInDoc = ObjDocWord.Content.Text
strTextGefunden = Trim$(Split(Split(strTextInDoc, strSuchbegriff_Anfang)(1), strSuchbegriff_Ende)(0))
' neues word Dokument erstellen
ObjWinWord.Documents.Add
With ObjWinWord
.Visible = True
.WindowState = 1
.Activate
.Selection.TypeText Text:=strTextGefunden
End With
' Word Dokument als HTML umwandeln
Dim strFileName As String
Dim TextToHTML As String
strFileName = Environ$("Temp") & "/" & Format(Now, "HTML_Test") & ".html"
ActiveDocument.SaveAs strFileName, wdFormatHTML, , , , , , , SaveNativePictureFormat:=True
TextToHTML = CreateObject("Scripting.FileSystemObject").GetFile(strFileName).OpenAsTextStream(1, -2).ReadAll
ActiveDocument.Close
Kill strFileName
ObjWinWord.Quit
Set ObjWinWord = Nothing
'E-Mail erstellen
Dim MyOutApp As Object
Dim MyMessage As Object
Set MyOutApp = CreateObject("Outlook.Application")
Set MyMessage = MyOutApp.CreateItem(0)
With MyMessage
.bodyformat = 2
.GetInspector
.To = "deinname@deinedomain.de"
.Subject = "Pneu & Rad Tage"
.HTMLBody = TextToHTML & .HTMLBody
.Display
' .Send 'Sendet die Email automatisch
End With
Set MyOutApp = Nothing
Set MyMessage = Nothing
End Sub