Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
560to564
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
560to564
560to564
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Worksheets bei Bedarf nachladen

Worksheets bei Bedarf nachladen
06.02.2005 14:59:53
C. Kummetat
Folgendes Problem :
Beim Öffnen einer Tabelle sollen, soweit sich zwei Referenztabellen noch nicht im Speicher befinden, diese Tabellen nachgeladen werden. Nachfolgender Code ist in einem auto_open-Makro untergebracht.
Leider bekomme den Laufzeitfehler 9 (Index außerhalb des gültigen Bereiches) bei der Anweisung "SheetName2 = Workbooks(FileName2).Name", soweit beide Dateien noch nicht um Speicher ist. Wenn sich die erste Datei schon im Speicher befindet, tritt der Fehler nicht auf.
Weiß jemand, warum dieser Fehler auftritt bzw. wie man ihn umgehen kann ?
Christoph
-----------------------------------------------------------------
On Error Resume Next
Dim FileName1 As String, FileName2 As String
Dim Pfad As String, SheetName1 As String, SheetName2 As String
FileName1 = "2004 Auftragsübersicht.xls" 'Zu ladende Datei 1
FileName2 = "2005 Auftragsübersicht.xls" 'Zu ladende Datei 2
Pfad = "G:\Daten\Office\" 'Pfad für Dateien 1 und 2

LoadJahr1:
On Error GoTo NonJahr1 'Datei noch nicht geladen
SheetName1 = Workbooks(FileName1).Name
GoTo LoadJahr2
NonJahr1:
Workbooks.Open FileName:=Pfad & FileName1, UpdateLinks:=3
LoadJahr2:
On Error GoTo NonJahr2 'Datei noch nicht geladen
SheetName2 = Workbooks(FileName2).Name
GoTo AktiviereSheet
NonJahr2:
Workbooks.Open FileName:=Pfad & FileName2, UpdateLinks:=3
AktiviereSheet:
Windows(FileName1).Activate

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Worksheets bei Bedarf nachladen
06.02.2005 17:10:59
RAnton
Hallo Christoph,
du hast für die VBA-Abarbeitung die Fehlerbehandlung scharf gestellt.
Wenn du dieses ändern willst gehst du so vor:
Extras-Optionen-Allgemein
Fehlerbehandlung "Bei nicht verarbeiteten Fehlern unterbrechen" anklicken.
Fertig.
Gruß
Anton
AW: Worksheets bei Bedarf nachladen
06.02.2005 19:48:40
C. Kummetat
Hallo Anton,
leider hat das Ankreuzen dieser Oprion keinerlei Auswirkungen.
Zum einen merkt sich VBA diese Einstellung nicht (muß jedes Mal angeklickt werden), zum anderen tritt der Fehler immer noch auf.
Ratlos : C.
AW: Worksheets bei Bedarf nachladen
06.02.2005 20:11:50
andre
Hallo Christoph,
das On Error ist nicht 100%ig. Wenn es mal nicht geht musst Du Deinen code anders aufziehen. Du kannst z.B. in einer Schleife die Namen der offenen Blätter mit Filename1 und Filename2 vergleichen. Bei VBA gut doch kein Problem oder?
Anzeige
AW: Worksheets bei Bedarf nachladen
07.02.2005 09:22:49
C. Kummetat
Hallo Andre,
das Problem scheint eher grundsätzlicher Natur zu sein.
Egal, welchen Code ich verwende, beim Aufruf der zweiten Prüfung erscheint stets diese Meldung. Ich hatte es nämlich auch schon mit Windows(x).Acticate versucht, um dann den Fehler hierfür zu verwenden. Aber leider tritt dieses Phänomen immer wieder auf.
C.
AW: Worksheets bei Bedarf nachladen
07.02.2005 17:25:38
andre
Hallo Christoph,
Du sollst die Namen erst vergleichen und nicht gleich aktivieren!
For Each mappen In Workbooks()
If mappen.Name = "DichWillIch.xls" Then MsgBox "juhu" ' oder eben aktivieren
Next
Grüße, andre
AW: Worksheets bei Bedarf nachladen
08.02.2005 08:33:04
C. Kummetat
Hallo Andre,
das war's offensichtlich.
Danke,
Christoph
Anzeige
... schön wenns geklappt hat ;-) o.T.
08.02.2005 17:18:38
andre

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige