Registriert seit: 10.04.2014
Version(en): 2016 + 365
Hallo,
wie kann ich eine Datei im Hintergrund öffnen, ohne daß sie angezeigt wird?
So öffne ich sie, aber dann ist sie das "ActiveWorkbook":
Microsoft Excel Objekt DieseArbeitsmappeOption Explicit
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Workbooks("Öffnungs-Test.xlsb").Close savechanges:=True
End Sub
Private Sub Workbook_Open()
vntFileName = ThisWorkbook.Path ' aktueller Dateipfad
Workbooks.Open Filename:=vntFileName & "\Öffnungs-Test.xlsb"
End Sub
VBA/HTML - CodeConverter für Office-Foren, AddIn für Excel/Word 2000-2013 - komplett in VBA geschrieben von Lukas Mosimann. Projektbetreuung durch mumpel
Code erstellt und getestet in Office 15
Registriert seit: 17.04.2014
Version(en): MS Office 365(32)
Hi Ralf,
Code:
Private Sub Workbook_Open()
GetObject ThisWorkbook.Path & "\Öffnungs-Test.xlsb"
End Sub
Gruß Uwe
Registriert seit: 10.04.2014
Version(en): 2016 + 365
(01.09.2015, 15:46)Kuwer schrieb: Hi Ralf,
Code:
Private Sub Workbook_Open()
GetObject ThisWorkbook.Path & "\Öffnungs-Test.xlsb"
End Sub
Gruß Uwe
danke.
Damit wird die Datei im Hintergrund geöffnet, aber es kommt Fehler 432: "Datei- oder Klassenname während Automatisierungsoperation nicht gefunden"
Registriert seit: 17.04.2014
Version(en): MS Office 365(32)
Hi Ralf,
(02.09.2015, 10:16)Rabe schrieb: Damit wird die Datei im Hintergrund geöffnet, aber es kommt Fehler 432: "Datei- oder Klassenname während Automatisierungsoperation nicht gefunden"
das kann ich bei mir nicht nachvollziehen, außer der Datei- oder Pfadname stimmt nicht. Dann wird aber auch nichts geladen.
Gruß Uwe
Registriert seit: 10.04.2014
Version(en): 2016 + 365
(02.09.2015, 13:30)Kuwer schrieb: das kann ich bei mir nicht nachvollziehen, außer der Datei- oder Pfadname stimmt nicht. Dann wird aber auch nichts geladen.
ich bin ja doof: Ich hatte nicht den Original-Dateinamen drin stehen.
Jetzt lädt er die Datei im Hintergrund und zeigt sie auch nicht an, aber jetzt kommt in der Zelle ein #BEZUG!-Fehler:
Hier die Formel:
='...Orig-Pfad...\Öffnung Test.xlsb'!Tabelle1[@[Dauer 2]]
Wenn ich die zweite Datei manuell nochmal öffne, dann ist sie im Vordergrund, und die Fehler sind weg.
Registriert seit: 17.04.2014
Version(en): MS Office 365(32)
Hi Ralf,
probiere es doch dann einfach mal so:
Code:
Private Sub Workbook_Open()
Application.ScreenUpdating = False
Workbooks.Open ThisWorkbook.Path & "\Öffnungs-Test.xlsb"
Me.Windows(1).Activate
Application.ScreenUpdating = True
End Sub
Gruß Uwe
Registriert seit: 10.04.2014
Version(en): 2016 + 365
Hi Uwe,
(02.09.2015, 17:11)Kuwer schrieb: probiere es doch dann einfach mal so:
Code:
Private Sub Workbook_Open()
Application.ScreenUpdating = False
Workbooks.Open ThisWorkbook.Path & "\Öffnungs-Test.xlsb"
Me.Windows(1).Activate
Application.ScreenUpdating = True
End Sub
da war dann trotzdem das Öffnungs-Test nicht verborgen und es war auch noch aktiviert.
Ich habe jetzt statt "Me.Windows(1).Activate" mit "ThisWorkbook.Activate" den Fokus auf die aufrufende Datei gelegt. Dann ist Öffnungs-Test zwar ebenfalls nicht verborgen, aber es liegt wenigstens nicht aktiviert vorne.