Inhaltsverzeichnis
In diesem Artikel werden wir Ihnen die Gründe für die " Subscript außerhalb des Bereichs " Fehler in Excel VBA und wie sie zu lösen sind.
Download Praxisvorlage
Sie können die kostenlose Excel-Vorlage für die Praxis hier herunterladen.
Subscript-Fehler außerhalb des Bereichs in VBA.xlsm
Was ist Subscript außerhalb des Bereichs Fehler in VBA?
VBA Subscript außerhalb des Bereichs Fehler tritt auf, wenn versucht wird, auf ein nicht vorhandenes Element oder eine nicht vorhandene Array-Sammlung in Excel zuzugreifen. Dies ist ein " Laufzeitfehler 9 "Fehlerart in VBA Kodierung in Excel.
Der Fehler sieht in der Regel wie folgt aus,
5 Gründe mit Lösungen für den Fehler "Subscript Out of Range" in VBA
In diesem Abschnitt werden die 5 häufigsten Gründe für das Auftreten der Subskription außerhalb des Bereichs Fehler und welche Lösungen es dafür gibt.
(1) Subscript außerhalb des Bereichs Fehler in VBA für nicht vorhandene Arbeitsmappe
Wenn Sie versuchen, auf eine Excel-Arbeitsmappe zuzugreifen, die nicht geöffnet ist, erhalten Sie die Meldung " Subskription außerhalb des Bereichs Fehler".
Wenn wir versuchen ausführen. den oben gezeigten Code, erhalten wir die Fehlermeldung, dass es keine Excel-Arbeitsmappe mit dem Namen "" gibt. Vertrieb ", die derzeit geöffnet ist.
Lösung
Um diesen Fehler zu beheben, öffnen Sie zunächst die Excel-Arbeitsmappe, auf die Sie zugreifen möchten, und führen Sie dann das Makro aus.
(2) Subscript außerhalb des Bereichs Fehler in VBA für nicht existierende Arbeitsblatt
Wenn Sie versuchen, auf ein Arbeitsblatt zuzugreifen, das nicht in der Excel-Arbeitsmappe vorhanden ist, erhalten Sie auch die Meldung " Subscript außerhalb des Bereichs " Fehler in VBA .
Wenn wir versuchen, den oben gezeigten Code auszuführen, erhalten wir die Fehlermeldung, dass es kein " Blatt2 "Arbeitsblatt in unserer Arbeitsmappe verfügbar.
Lösung
Um diesen Fehler zu beheben, müssen Sie das Excel-Blatt, auf das Sie zugreifen möchten, in der laufenden Arbeitsmappe haben und dann das Makro ausführen.
3. subscript out of range Fehler in VBA für undefinierte Array-Elemente
Wenn Sie die Länge eines dynamischen Arrays nicht mit dem Wort DIM oder REDIM in Excel VBA dann erhalten Sie die Meldung " Subskription außerhalb des Bereichs Fehler".
Im obigen Code haben wir das Array in den Dimensionen 5 bis 10 deklariert, aber auf ein Subscript mit dem Index 3 verwiesen, das niedriger als 5 ist.
Lösung
Um dies zu lösen, deklarieren Sie den Index zwischen der Array-Dimension.
Dieser Code funktioniert einwandfrei, da wir uns hier auf den Index 5 beziehen, der innerhalb des Bereichs von 5 bis 10 liegt.
4. subscript out of range Fehler in VBA für ungültige Sammlung/Array
Wenn die tiefgestellte Zahl größer oder kleiner ist als der Bereich der möglichen tiefgestellten Zahlen, dann wird die Subskription außerhalb des Bereichs wird ein Fehler auftreten.
Schauen Sie sich das obige Beispiel an. Wir haben die Variable als Array deklariert, aber anstatt einen Start- und Endpunkt zuzuweisen, haben wir direkt das erste Array mit dem Wert 20 zugewiesen.
Lösung
Um dieses Problem zu lösen, müssen wir die Länge des Arrays mit einem Start- und Endpunkt versehen.
Dieser Code gibt keinen Fehler, weil wir jetzt das Array mit einem Startpunkt von 1 und einem Endpunkt von 5 deklariert haben.
5. der Fehler "Subscript Out of Range" in VBA für Shorthand-Skript
Wenn Sie ein Kürzel aus einem tiefgestellten Zeichen verwenden und es sich auf ein ungültiges Element bezieht, erhalten Sie die Meldung " Subskription außerhalb des Bereichs " Fehler in Excel VBA Zum Beispiel, [A2] ist die Kurzform für ActiveSheet.Range(A2) .
Lösung
Um dies zu beheben, müssen Sie eine gültige Schlüsselname und Index für die Sammlung. Anstatt zu schreiben ActiveSheet.Range(A2) können Sie einfach schreiben [ A2 ].
Vorteil von Excel Subscript Out of Range Fehler in VBA
- VBA Subscript außerhalb des Bereichs Fehler oder " Laufzeitfehler 9 " ist wirklich nützlich, um die Position des Fehlers zu spezifizieren, wo er in der VBA Code.
- Dieser Fehler hilft den Benutzern, die Art des Fehlers zu finden, so dass sie die Lösungen entsprechend dem Fehlercode überprüfen und finden können.
Dinge zum Merken
- Da dieser Fehler jeden Schritt des Codes kompiliert, um uns genau zu zeigen, für welchen Teil des Codes wir tatsächlich Maßnahmen ergreifen müssen, ist es besser, jede Codezeile einzeln zu kompilieren, indem Sie F8 Taste, wenn Sie eine große Codezeile haben.
Schlussfolgerung
Dieser Artikel zeigt Ihnen die Gründe und Lösungen für Excel Subskription außerhalb des Bereichs Fehler in VBA. Ich hoffe, dass dieser Artikel für Sie von Nutzen war, und stehe Ihnen für Fragen zum Thema gerne zur Verfügung.