Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1708to1712
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
GetObject (Mappe im Hintergrund öffnen)
20.08.2019 08:22:13
Chriss
Hallo Forum,
ich habe vor Zeiten eine relativ aufwendige Userform-Struktur basierend auf "GetObject" aufgebaut, muss nach einiger Zeit der Untätigkeit aber feststellen, dass der "GetObject" Befehl nicht mehr entsprechend ausgeführt wird.
Ich verwende kurz gesagt den nachfolgenden Code, um die gewünschte Datei im Hintergrund zu öffnen und diese dann letztlich auf verschiedenste Art auslesen zu können.

Dim GetObjectWB As Workbook
Set GetObjectWB = GetObject("M:\...\...\...\LS " & Worksheets("Tabelle1").Range("A1").Value & ".xlsx")
Früher hat es die Datei entsprechend geöffnet, das habe ich daran gesehen, dass meine INDIREKT-Bezüge "angesprungen sind" - nun passiert dies nicht mehr.
Wenn ich die Datei manuell öffne - nicht im Hintergrund - funktioniert alles wunderbar.
Daher sehe ich das Problem in dem "GetObject" Befehl.
Muss ich zusätzlich etwas einbauen?
Könnte eine neue Office Version irgendwas dahingehend blockieren, was ich seperat aktivieren muss?
Kann ich die Fehlerquelle genauer bestimmen?
Gibt es Alternativen?
Was VBA angeht bin ich recht unbeholfen, würde mich daher über Hilfe freuen.
Vielen Dank im Voraus!
VG,
Chriss

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: GetObject (Mappe im Hintergrund öffnen)
20.08.2019 08:39:32
Torsten
Hallo Chriss,
was willst du denn anstellen mit der im Hintergrund geoeffneten Datei? Daten von dort kopieren?
Ich haette eine Alternative fuer dich. Mit dieser wird die Datei in einer separaten Excel Instanz geoeffnet, aber nicht sichtbar. In meinem Beispiel werden Daten aus der Datei in die aktive Datei kopiert. Hier die benutzte Range aus dem ersten Tabellenblatt in das aktive Tabellenblatt meiner Makro Datei.

Sub ZugriffAufGeschlosseneSeite()
Dim rng As Range
With CreateObject("Excel.Application")
'Hier Datei und Blattnamen anpassen
With .Workbooks.Open("C:\Users\torsten.wetzel\Downloads\129531.xlsm").Sheets(1)
'Hier den gewünschten Bereich angeben
'     Set Rng = .Range("$A1:$B10")
Set rng = .UsedRange
'Hier das Ziel angeben
ActiveSheet.Range("$A1").Resize(rng.Rows.Count, rng.Columns.Count).value = rng.value
End With
.Quit
End With
End Sub

Gruss Torsten
Anzeige
AW: GetObject (Mappe im Hintergrund öffnen)
20.08.2019 09:33:46
Chriss
Hallo Torsten,
Danke für deinen Ansatz!
Meine Anforderung ist es lediglich die Datei im Hintergrund zu öffnen, um mit Formeln die Datei auszulesen, und dann nach einer gewissen Zeit (Abläufe dazwischen) wieder zu schließen.
D.h. ich muss nur eine Variable definieren + Set verwenden und den entsprechenden Befehl haben.
Mit simplen "Workbooks.Open" klappt es selbstverständlich wunderbar.
Aber sowohl "GetObject" als auch "CreateObject ("Excel.Application")" funktionieren nicht.
Meine Formeln (INDIREKT) in der Arbeitsmappe, in der ich den Code aktiviere, können die zu öffnende Arbeitsmappe nicht auslesen.
VG,
Chriss
Anzeige
AW: GetObject (Mappe im Hintergrund öffnen)
20.08.2019 10:15:01
Werner
Hallo Chriss,
meinst du so:
Public Sub aaa()
Dim GetObjectWB As Workbook
'Datei im Hintergrund öffnen
Application.ScreenUpdating = False
Set GetObjectWB = Workbooks.Open("M:\...\...\...\LS " & Worksheets("Tabelle1").Range("A1"). _
Value & ".xlsx")
ActiveWindow.Visible = False
'...dein weiterer Code
'unsichtbare Datei ohne speichern wieder schließen
Workbooks("LS " & Worksheets("Tabelle1").Range("A1").Value & ".xlsx").Close False
End Sub
Gruß Werner
AW: GetObject (Mappe im Hintergrund öffnen)
20.08.2019 13:41:30
Chriss
Hallo Werner,
ja, so habe ich mir das vorgestellt, das klappt :-)
Vielen Dank Dir!
VG,
Chriss
Anzeige
Gerne u. Danke für die Rückmeldung. o.w.T.
20.08.2019 13:50:35
Werner

7 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige