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

Laufzeitfehler 9 (mal wieder :-) )

Laufzeitfehler 9 (mal wieder :-) )
30.12.2006 10:51:02
IngoLars
Liebe Excel-Gemeinde,
ich hätte da folgendes Problem.
Das nachfolgene Makro ist im Projekt "Test1" geschrieben:

Sub Test1 ()
Workbooks("Test2").Worksheets("Tabelle1").Activate
End Sub

Dieses simple Makro läuft auf meinem Rechner, auf dem meines Kollegen leider nicht. Es ergibt dort einen Laufzeitfehler 9. Auch auf anderen PC's läuft es mal und mal wieder nicht.
Offensichtlich ist es auf den PC's wo es nicht läuft nicht möglich Makros auszuführen die auf Objekte ausserhalb der gerade geöffneten Arbeitsmappe zugreifen. Warum?
Hat jemand eine Idee wie ich das Problem lösen kann? Ggf. hängt es an irgendwelchen Sicherheitseinstellungen von Windows?
Grüße
Ingo Lars

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Laufzeitfehler 9 (mal wieder :-) )
30.12.2006 10:59:59
Oberschlumpf
Hi Ingo Lars
Index ausserhalb des (gültigen?) Bereichs
So lautet doch der Text der Fehlermeldung, oder?
Du kannst nicht auf Tabellenblätter und/oder Excel-Dateien zugreifen, die gar nicht vorhanden sind.
Ich vermute, dass ist der Grund für den Fehler Nr. 9.
Du musst in deinem Code zuerst prüfen, ob DIE Tabellenblätter/Excel-Dateien, auf die du zugreifen willst, auch vorhanden sind.
Wie soll Excel auch ein Tabellenblatt ACTIVATEN, welches nicht vorhanden ist?
Konnte ich helfen?
Ciao
Thorsten
AW: Laufzeitfehler 9 (mal wieder :-) )
31.12.2006 10:30:52
IngoLars
Hallo Oberschlumpf,
leider ist dies ja genau das Problem.
Die Objekte sind vorhanden aber ein Zugriff ist nicht möglich (Laufzeitfehler 9 Index ausserhalb des gültigen Bereichs). Natürlich sind beide Datein (Test1 und Test2) geöffnet wenn das Makro läuft.
Das ganze macht schlicht keinen Sinn, zumal das Makro auf einigen PC's läuft auf anderen dagegen nicht.
Ich hab geprüft ob es ggf. an der Excel-Version liegen könnte, aber auf den Rechnern ist absolut das gleiche Excel mit den gleichen Servicepacks installiert.
Also frag ich nochmal: wer hatte schon ein ähnliches Problem, woran liegt das?
Ein echts Mysterium.
Grüße
IngoLars
Anzeige
AW: Laufzeitfehler 9 (mal wieder :-) )
31.12.2006 11:05:46
Oberschlumpf
so'n Mist :-)
Hi
Dieser Satzteil "...die auf Objekte ausserhalb der gerade geöffneten Arbeitsmappe zugreifen...", besonders das Wort "ausserhalb", brachte mich zu dem, was ich zuletzt schrieb.
Hast du es schon mal mit dieser Variante versucht?
Workbooks("Test2").Sheets("Tabelle1").Activate
Ich kenne nicht den Unterschied zwischen Worksheets und Sheets. Aber vielleicht hilft es ja trotzdem ? :-)
Oder vielleicht liegt es ja daran, dass vorm Aufruf deines Activate-Makros durch den Benutzer ein anderes Workbook angeklickt wurde.
Vielleicht muss in diesem Fall ja zuerst das Workbook aktiviert und im 2. Code-Schritt das Sheet aktiviert werden - als so:
Workbooks("Test2").Activate
Sheets("Tabelle1").Activate
Mal sehen, ob das hilft :)
Ciao
Thorsten
Anzeige
AW: Laufzeitfehler 9 (mal wieder :-) )
31.12.2006 12:05:28
IngoLars
Hallo Thorsten,
also das mit den zwei Programmzeilen hab ich schon versucht, brachte nichts.
Worksheets oder Sheets? Soweit ich das noch in Erinnerung habe ist es grundsätzlich egal was man verwendet. Worksheets ist wohl der ältere Begriff aus einer früheren VBA-Version?
Ich kanns dennoch mal versuchen. Mal sehen ob's was bringt Worksheets gegen Sheets auszutauschen. Bin da aber wenig optimistisch da ja Makros die sich nur auf die aktive Arbeitsmappe beziehen auch mit dem Begriff Worksheets laufen.
dennoch danke für den Tipp
Grüße
ILH

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige