Wie behebt man den Excel VBA Fehler “Subscript Out of Range” (Laufzeitfehler 9)?

Summary: Der Laufzeitfehler 9 in Excel tritt normalerweise auf, wenn Sie verschiedene Objekte in einem Code verwenden oder das Objekt, das Sie zu verwenden versuchen, nicht definiert ist. In diesem Beitrag werden die Gründe für den Excel-VBA-Fehler "Subscript out of Range" und die Lösungen zur Behebung des Problems diskutiert. Es wird auch ein Excel-Reparatur-Tool erwähnt, das helfen kann, den Fehler zu beheben, wenn er aufgrund einer Beschädigung im Arbeitsblatt auftritt.

Viele Benutzer haben berichtet, dass bei der Verwendung von VBA-Code in Excel der Fehler “Subscript out of range” (Laufzeitfehler 9) auftritt. Der Fehler tritt häufig auf, wenn das Objekt, auf das Sie sich in einem Code beziehen, nicht verfügbar, gelöscht oder nicht früher definiert ist. Manchmal tritt er auf, wenn Sie ein Array im Code deklariert haben, aber vergessen haben, die DIM- oder ReDIM-Anweisung anzugeben, um die Länge des Arrays zu definieren.

Ursachen für den VBA-Laufzeitfehler 9: Subscript außerhalb des Bereichs

Der Fehler “Subscript out of range” in Excel kann aus verschiedenen Gründen auftreten, z. B:

Methoden zur Behebung des Excel-VBA-Fehlers ‘Subscript out of Range’

Nachfolgend finden Sie einige Umgehungsmöglichkeiten, mit denen Sie den Laufzeitfehler 9 in Excel beheben können.

Methode 1: Überprüfen Sie den Namen des Arbeitsblatts im Code

Manchmal gibt Excel den Laufzeitfehler 9: Subscript out of range aus, wenn der Name des Arbeitsblatts im Code nicht korrekt definiert ist. Beispiel: Beim Versuch, den Inhalt eines Excel-Blattes (emp) in ein anderes Blatt (emp2) per VBA-Code zu kopieren, haben Sie versehentlich den falschen Namen des Arbeitsblattes angegeben (siehe den unten stehenden Code).

Private Sub CommandButton1_Click()
Worksheets(“emp”).Range(“A1:E5”).Select
Selection.Copy
Worksheets(“emp3”).Aktivieren
Worksheets(“emp3”).Range(“A1:E5”).Select
ActiveSheet.Paste
Application.CutCopyMode = False
End Sub

Wenn Sie den obigen Code ausführen, wird Excel den Fehler Subscript out of range ausgeben.

Überprüfen Sie also den Namen des Arbeitsblatts und korrigieren Sie ihn. Hier sind die Schritte:

Methode 2: Überprüfen Sie den Bereich des Arrays

Der VBA-Fehler “Subscript out of range” tritt auch auf, wenn Sie ein Array in einem Code deklariert haben, aber die Anzahl der Elemente nicht angegeben haben. Zum Beispiel – Wenn Sie ein Array deklariert haben und vergessen haben, die Array-Variable mit Elementen zu deklarieren, erhalten Sie den Fehler (siehe unten):

Um dies zu beheben, geben Sie die Array-Variable an:

Sub FillArray()
Dim curExpense(364) As Currency
Dim intI As Integer
For intI = 0 to 364
curExpense(intI) = 20
Next
End Sub

Methode 3: Makro-Sicherheitseinstellungen ändern

Der Laufzeitfehler 9: Subscript out of range kann auch auftreten, wenn es ein Problem mit den Makros gibt oder Makros in den Makro-Sicherheitseinstellungen deaktiviert sind. In einem solchen Fall können Sie die Makroeinstellungen überprüfen und ändern. Gehen Sie wie folgt vor:

Methode 4: Reparieren Sie Ihre Excel-Datei

Der Name oder das Format der Excel-Datei oder der Name der Objekte kann sich aufgrund einer Beschädigung in der Datei ändern. Wenn die Objekte in einem VBA-Code nicht identifiziert werden, kann der Fehler “Subscript out of range” auftreten. Sie können das Dienstprogramm Öffnen und Reparieren in Excel verwenden, um die beschädigte Datei zu reparieren. Führen Sie die folgenden Schritte aus, um dieses Dienstprogramm zu verwenden:

Wenn das Dienstprogramm “Öffnen und Reparieren” nicht in der Lage ist, die beschädigte/beschädigte makroaktivierte Excel-Datei zu reparieren, versuchen Sie es mit einem fortgeschrittenen Excel-Reparaturtool wie Stellar Repair for Excel. Es kann schwer beschädigte Excel-Arbeitsmappen leicht reparieren und alle Elemente, einschließlich Makros, Zellkommentare, Tabellen, Diagramme usw. mit 100%iger Integrität wiederherstellen. Das Tool ist mit allen Versionen von Microsoft Excel kompatibel.

Schlussfolgerung

Bei der Verwendung von VBA in Excel kann der Fehler “Subscript out of range” auftreten. Sie können die in diesem Blog beschriebenen Abhilfemaßnahmen befolgen, um den Fehler zu beheben. Wenn die Excel-Datei beschädigt ist, dann können Sie Stellar Repair for Excel verwenden, um die Datei zu reparieren. Es handelt sich um eine leistungsstarke Software, die alle Probleme beheben kann, die aufgrund einer Beschädigung der Excel-Datei auftreten. Es hilft, alle Daten aus den beschädigten Excel-Dateien (.xls, .xlsx, .xltm, .xltx, und .xlsm) wiederherzustellen, ohne die ursprüngliche Formatierung zu verändern. Das Tool unterstützt Excel 2021, 2019, 2016 und ältere Versionen.

Related Post

Exit mobile version