mit untenstehenden Codes, die sich teilweise hinter einem UF mit einem Textfenster und teilweise in einem Modul befinden, würde ich gerne erreichen, die im Verzeichnis befindlichen .dot anzeigen zu lassen (das funktioniert auch soweit), um dann die ausgewählte .dot als Dokument zu öffnen. Es erscheint eine Fehlermeldung, dass die Objekterstellung durch ActiveX Komponente nicht möglich ist. - Was ist evtl. falsch? - Gibt es evtl. Alternativen, die diese Fehlermeldung nicht verursachen. Schön wäre auch, wenn auch hier als Pfad der Pfad genommen werden könnte, der sich in Tabelle "Basis", Zelle "A30" befindet (also, Verweis auf diese Zelle). - Danke schon jetzt für die Rückmeldungen.
Herzliche Grüße
Wolfgang
'Code aus dem UF
Private Sub CB_Abbrechen_Click()
boAbbrechen = True
Unload Me
End Sub
Private Sub CB_OK_Click()
Dim wksBasis As Worksheet, lastRow As Long
'On Error GoTo fehler
If Me.cbox_DOT.ListIndex = -1 Then
If MsgBox("Es wurde keine DOT-Datei gewählt!", vbInformation + vbOKCancel, _
"Serienbrief erstellen") = vbCancel Then
Unload Me
Exit Sub
End If
Else
strDOT = Me.cbox_DOT.Text
Unload Me
End If
Exit Sub
End Sub
Private Sub UserForm_Initialize()
'dot-DateienListe einlesen
'Ort für DOT-Dateiende ist im Modul modSerienbrief festgelegt
Dim strdatei
strdatei = Dir(spOrt & "\*.dot")
Do Until strdatei = ""
Me.cbox_DOT.AddItem strdatei
strdatei = Dir
Loop
End Sub
'Code aus Modul
Option Explicit
'Für korrekte Anbindung an Word muss unter Extras-->Verweise die
' Microsoft Word x.y Object Library als aktiv markiert werden
Public strDOT 'Variable für im Userform gewählte DOT-Datei
Public boAbbrechen As Boolean
'Speicherort für DOT-Dateien
Public Const spOrt As String = "C:\Dokumente und Einstellungen\Wolfgang\Desktop\Test\"
Sub DOT_Start()
Dim Dok As Word.Document
ufWordstart.Show
If strDOT = "" Or boAbbrechen = True Then
boAbbrechen = False
Else
'Nach Word wechseln und neues Dokument aus DOT-Datei erzeugen
Application.ActivateMicrosoftApp (xlMicrosoftWord)
Set Dok = Word.Documents.Add(Template:=spOrt & "\" & strDOT)
'Serienbrief in neues Dokument schrieben
Dok.MailMerge.Execute
End If
End Sub