ich habe ein Problem und bitte euch um Hilfe.
Mit dem folgenden Code öffne ich die andere Datei:
Option Explicit
Sub workbook_open()
Dim wb As Workbook 'Workbook
Dim wksH As Worksheet 'Hilfstabelle
Dim strPfadZiel As String
Dim strNameZiel As String
Application.ScreenUpdating = False 'Bildschirmaktualisierung ausgeschaltet
Application.WindowState = xlMaximized 'maximize Excel
ActiveWindow.WindowState = xlMaximized 'maximize the workbook in Excel
Set wb = ThisWorkbook
Set wksH = wb.Worksheets("Hilfstabelle")
strPfadZiel = wksH.Range("C8") & wksH.Range("C13") & "\"
strNameZiel = wksH.Range("F2")
Debug.Print strPfadZiel
Debug.Print strNameZiel
'Anfang - Auflistung Dateien Basis und Laufend
Call Dateien_E
Call Dateien_F
'Ende - Auflistung Auflistung Dateien Basis und Laufend
'!!!!! Prüfung einfügen ob bereits geöffent !!!!
If wksH.Range("E2") > "" And wksH.Range("F2") > "" Then
MsgBox "lfd. Datei öffnen"
Application.EnableEvents = False
Workbooks.Open Filename:=strPfadZiel & strNameZiel
Application.EnableEvents = True
'Application.Run ("Mappe_laufend.xlsm!workbook_Open2")
Application.Run (strNameZiel & "!Workbook_Open2")
ElseIf wksH.Range("E2") > "" And wksH.Range("F2") = "" Then
MsgBox "Basis öffnen"
End If
Set wb = Nothing
Set wksH = Nothing
Application.ScreenUpdating = True 'Bildschirmaktualisierung eingeschaltet
End Sub
Das Öffnen der 2. Datei funktioniert. Auch der Aufruf des Makros mit dem Schliessen der 1. Datei funktioniert.Was jedoch nicht funktioniert ist, dass sich die UserForm1 öffnet nachdem die 1. Datei geschlossen wurde.
Sub Workbook_Open2()
Dim liWs As Integer
For liWs = 1 To Workbooks.Count
'If Workbooks("Ausführungsdatei.xlsm").Name = "Ausführungsdatei.xlsm" Then
If Workbooks(liWs).Name = "Ausführungsdatei.xlsm" Then
Workbooks("Ausführungsdatei.xlsm").Close True
UserForm1.Show
Exit For
End If
Next
UserForm1.Show
End Sub
Wo ist der Fehler?Besten Dank
Gruss Peter