Guten Tag,
mit einem Makro in Outlook eine neue Email angelegt und der Text einer Word-Datei eingefügt werden. Beim Einfügen des Textes aus einer Word-Datei in den Email-Body bekomme ich den Laufzeitfehler 4605 "Diese Methode oder Eigenschaft ist nicht verfügbar, weil das Dokument für Bearbeitung gesperrt ist."
Die einzufügende Datei ist nicht geschützt und auch nicht geöffnet. Kennt jemand dieses Problem und hat eine Lösung parat?
Vielen Dank für die Hilfe
MSP
Der Code des Makros ist wie folgt:
Private Sub Command_Email_anlegen_Click()
Dim olApp As Object
Dim olMailItm As Object
Dim iCounter As Integer
Dim Dest As Variant
Dim SDest As String
Dim i As Single
Dim balken As String
Dim anz_list As Integer
Dim anz_select As Integer
' ---------------------------------------------------------------------------------------------
Dim Ins As Outlook.Inspector
Dim Document As Word.Document
Dim Word As Word.Application
Dim Selection As Word.Selection
' ---------------------------------------------------------------------------------------------
balken = "|"
anz_list = Bewerber_absage.Bewerber_vorhanden.ListCount
anz_select = 0
For i = 0 To anz_list
Bewerber_absage.Bewerber_vorhanden.BoundColumn = 1
If anz_select < anz_list Then
If Bewerber_absage.Bewerber_vorhanden.Selected(anz_select) = True Then
str_email = Bewerber_absage.Bewerber_vorhanden.List(i, 0)
pos_balken = InStr(str_email, balken)
If pos_balken <> 0 Then
SDest = Mid(str_email, pos_balken + 1)
'Create the Outlook application and the empty email.
Set olApp = CreateObject("Outlook.Application")
Set olMailItm = olApp.CreateItem(0)
' Set Ins = olMailItm.ActiveInspector
Set Ins = olMailItm.GetInspector
Set Document = Ins.WordEditor
Set Word = Document.Application
Set Selection = Word.Selection
With olMailItm
'Do additional formatting on the BCC and Subject lines, add the body text from the spreadsheet, and send.
.BCC = SDest
.Subject = "FYI"
Selection.InsertFile FileName:="D:\Entwicklung\Excel\Absage.txt", Range:="", ConfirmConversions _
:=False, Link:=False, Attachment:=False
' Selection.InlineShapes.AddOLEObject ClassType:="Word.Document.8", FileName _
' :="D:\Entwicklung\Excel\Absage.dot", LinkToFile:=False, DisplayAsIcon:= _
' False
.Display
' .Body = ActiveSheet.TextBoxes(1).Text
' .Send
End With
'Clean up the Outlook application.
Set olMailItm = Nothing
Set olApp = Nothing
End If
End If
anz_select = anz_select + 1
End If
Next i
End Sub
mit einem Makro in Outlook eine neue Email angelegt und der Text einer Word-Datei eingefügt werden. Beim Einfügen des Textes aus einer Word-Datei in den Email-Body bekomme ich den Laufzeitfehler 4605 "Diese Methode oder Eigenschaft ist nicht verfügbar, weil das Dokument für Bearbeitung gesperrt ist."
Die einzufügende Datei ist nicht geschützt und auch nicht geöffnet. Kennt jemand dieses Problem und hat eine Lösung parat?
Vielen Dank für die Hilfe
MSP
Der Code des Makros ist wie folgt:
Private Sub Command_Email_anlegen_Click()
Dim olApp As Object
Dim olMailItm As Object
Dim iCounter As Integer
Dim Dest As Variant
Dim SDest As String
Dim i As Single
Dim balken As String
Dim anz_list As Integer
Dim anz_select As Integer
' ---------------------------------------------------------------------------------------------
Dim Ins As Outlook.Inspector
Dim Document As Word.Document
Dim Word As Word.Application
Dim Selection As Word.Selection
' ---------------------------------------------------------------------------------------------
balken = "|"
anz_list = Bewerber_absage.Bewerber_vorhanden.ListCount
anz_select = 0
For i = 0 To anz_list
Bewerber_absage.Bewerber_vorhanden.BoundColumn = 1
If anz_select < anz_list Then
If Bewerber_absage.Bewerber_vorhanden.Selected(anz_select) = True Then
str_email = Bewerber_absage.Bewerber_vorhanden.List(i, 0)
pos_balken = InStr(str_email, balken)
If pos_balken <> 0 Then
SDest = Mid(str_email, pos_balken + 1)
'Create the Outlook application and the empty email.
Set olApp = CreateObject("Outlook.Application")
Set olMailItm = olApp.CreateItem(0)
' Set Ins = olMailItm.ActiveInspector
Set Ins = olMailItm.GetInspector
Set Document = Ins.WordEditor
Set Word = Document.Application
Set Selection = Word.Selection
With olMailItm
'Do additional formatting on the BCC and Subject lines, add the body text from the spreadsheet, and send.
.BCC = SDest
.Subject = "FYI"
Selection.InsertFile FileName:="D:\Entwicklung\Excel\Absage.txt", Range:="", ConfirmConversions _
:=False, Link:=False, Attachment:=False
' Selection.InlineShapes.AddOLEObject ClassType:="Word.Document.8", FileName _
' :="D:\Entwicklung\Excel\Absage.dot", LinkToFile:=False, DisplayAsIcon:= _
' False
.Display
' .Body = ActiveSheet.TextBoxes(1).Text
' .Send
End With
'Clean up the Outlook application.
Set olMailItm = Nothing
Set olApp = Nothing
End If
End If
anz_select = anz_select + 1
End If
Next i
End Sub