Excel VBA-Fehler 1004

VBA 1004-Fehler ist ein Fehler, der bei der Ausführung eines Codes in VBA auftritt. Er wird auch als VBA-Laufzeitfehler bezeichnet. Während wir in VBA oder einer anderen Programmiersprache oder sogar in unserer täglichen Arbeit arbeiten, stoßen wir auf verschiedene Arten von Fehlern. Manchmal fehlt sogar ein einzelnes Zeichen im Code, wodurch der gesamte Code nicht funktioniert oder der gesamte Code möglicherweise falsch ist.

Fehler sind definitiv ein Teil des Codes, den wir schreiben. Es mag ungewollt sein, aber es gibt sie. Egal wie professionell wir im Codieren sind, Laufzeitfehler können überall auftreten. Wie oben erläutert, ist VBA 1004-Fehler ein Fehler, der während der Laufzeit des Codes in Excel auftritt. Es wird auch als anwendungsdefinierter oder objektdefinierter Fehler bezeichnet.

Es gibt verschiedene Gründe, warum wir den VBA-Laufzeitfehler 1004 in Excel erhalten. Lassen Sie uns einige davon lernen.

  • VBA-Laufzeitfehler 1004: Methode 'Range' des Objekts '_ Global' fehlgeschlagen:

Dieser Fehler tritt auf, wenn der Bereichswert, auf den wir uns beziehen, falsch ist. Es wird auch als Methode "Range" des Objekts "_ Global" bezeichnet.

  • VBA-Laufzeitfehler 1004: Dieser Name ist bereits vergeben. Versuchen Sie es mit einem anderen:

Wir geben einem Arbeitsblatt, das bereits von einem anderen Arbeitsblatt übernommen wurde, den gleichen Namen.

  • VBA-Laufzeitfehler 1004: Die select-Eigenschaft der Range-Klasse kann nicht abgerufen werden:

Dies ist ein Fehler, wenn wir einen Bereich in einem anderen Arbeitsblatt auswählen, ohne das Arbeitsblatt zu aktivieren, auf das wir uns beziehen.

  • VBA-Laufzeitfehler 1004: Methode 'Öffnen' des Objekts 'Arbeitsmappen' fehlgeschlagen:

Dieser Fehler tritt auf, wenn wir versuchen, eine Arbeitsmappe zu öffnen, die bereits geöffnet ist oder die Datei bereits von einem anderen Programm verwendet wird.

  • VBA-Laufzeitfehler 1004: Leider konnten wir Folgendes nicht finden:

Wir erhalten diese Fehlermeldung, wenn wir versuchen, ein Arbeitsblatt zu öffnen, das nicht existiert.

Wie wir erfahren haben, kann es verschiedene Gründe dafür geben, dass ein Laufzeitfehler auftritt. Laufzeitfehler können in jeder Codezeile auftreten. Wir müssen lernen, mit diesen Fehlern umzugehen, und sie werden als VBA-Fehlerbehandlung bezeichnet.

Beispiel für den VBA-Laufzeitfehler 1004 in Excel

Nachdem ich nun verschiedene Arten von Fehlern beschrieben habe, die zur Laufzeit eines VBA-Codes auftreten können, wollen wir sie anhand von Beispielen erläutern.

Sie können diese VBA 1004-Fehler-Excel-Vorlage hier herunterladen - VBA 1004-Fehler-Excel-Vorlage

VBA-Laufzeitfehler 1004 - Beispiel 1

Wie zu diesem Fehler erklärt, tritt dieser Fehler auf, wenn wir in VBA auf einen falschen benannten Bereichswert verweisen. Dies kann passieren, wenn wir einen Schreibfehler im angegebenen Bereich machen, um auf einen Bereich zu verweisen, der nicht einmal existiert. Um dies zu demonstrieren, machen wir zuerst einen benannten Bereich. Ich habe die folgenden Daten hier.

  • Nennen wir diesen Tabellenkopf DATA .

  • Klicken Sie auf der Registerkarte Entwickler auf Visual Basic, um den VB-Editor zu öffnen.

  • Deklarieren Sie die Unterfunktion, um mit dem Schreiben des Codes zu beginnen.

Code:

 Sub Sample () End Sub 

  • Nennen Sie den Header, den wir mit dem folgenden Code benannt haben.

Code:

 Sub Sample () Range ("Data"). Wählen Sie End Sub 

  • Wenn wir den Code ausführen, können wir im Excel sehen, dass er ausgewählt wurde, da wir den Header korrekt aufgerufen haben.

  • Jetzt schreiben wir die Schreibweise für den Headernamen falsch.

Code:

 Sub Sample () Range ("Dataa"). Wählen Sie End Sub 

  • Führen Sie den Code erneut aus, um das Ergebnis anzuzeigen.

Wir bekommen Excel VBA Runtime Error 1004, weil wir den Bereichsnamen falsch geschrieben haben.

VBA-Laufzeitfehler 1004 - Beispiel 2

Wir bekommen diesen Fehler, wenn wir versuchen, ein Arbeitsblatt mit einem Namen umzubenennen, der bereits vergeben ist. Zum Beispiel habe ich Blatt 1 in " Anand " umbenannt und ich werde versuchen, Blatt 2 so umzubenennen, wie es ist, dann sehe ich das Ergebnis.

  • Klicken Sie auf der Registerkarte Entwickler auf Visual Basic, um den VB-Editor zu öffnen.
  • Deklarieren Sie eine Unterfunktion, um den Code zu schreiben.

Code:

 Sub Sample1 () End Sub 

  • Versuchen Sie, Blatt 2 mit dem folgenden Code in Anand umzubenennen:

Code:

 Sub Sample1 () Arbeitsblätter ("Sheet2"). Name = "Anand" End Sub 

  • Führen Sie den obigen Code aus und sehen Sie das Ergebnis.

Wenn ich versuche, ein Blatt mit dem bereits belegten Namen umzubenennen, erhalte ich eine Fehlermeldung.

VBA-Laufzeitfehler 1004 - Beispiel 3

Ich werde versuchen, den Wert von Blatt 2 zu einer Variablen in Blatt 3 zu addieren. Aber ich werde das Blatt 2 nicht aktivieren und sehen, was passiert.

  • Klicken Sie auf der Registerkarte Entwickler auf Visual Basic, um den VB-Editor zu öffnen.
  • Deklarieren Sie eine Unterfunktion, um den Code zu schreiben.

Code:

 Sub Sample2 () End Sub 

  • Deklarieren Sie zwei Variablen A und B als Ganzzahl.

Code:

 Sub Sample2 () Dim A As Integer Dim B As Integer End Sub 

  • Speichern Sie in Variable B den Wert von A zusätzlich zu Zelle A1 von Blatt 2.

Code:

 Sub Sample2 () Dim A As Integer Dim B As Integer B = A + Arbeitsblätter ("Sheet2"). Bereich ("A1"). Wählen Sie End Sub 

  • Nehmen wir an, der Code funktioniert und verwenden Sie die msgbox-Funktion, um den Wert von B anzuzeigen.

Code:

 Sub Sample2 () Dim A As Integer Dim B As Integer B = A + Arbeitsblätter ("Sheet2") Range ("A1") Wählen Sie MsgBox B End Sub 

  • Führen Sie den Code aus, um das Ergebnis anzuzeigen.

Wir bekommen diesen Fehler, weil wir Blatt 2 nicht aktiviert haben, aber wir versuchen, einen Wert von Blatt 2 zu verwenden.

VBA-Laufzeitfehler 1004 - Beispiel 4

Dieser Laufzeitfehler tritt auf, wenn bereits die Arbeitsmappe mit demselben Namen geöffnet ist, wir jedoch versuchen, sie erneut zu öffnen.

In diesem Beispiel habe ich meine Arbeitsmappe bereits in VBA 1004 Error.xlsm umbenannt und werde versuchen, sie erneut zu öffnen. Diese Datei ist bereits geöffnet und es wird geprüft, ob ein VBA 1004-Fehler vorliegt.

  • Klicken Sie auf der Registerkarte Entwickler auf Visual Basic, um den VB-Editor zu öffnen.
  • Deklarieren Sie eine Unterfunktion, um den Code zu schreiben.

Code:

 Sub Sample3 () End Sub 

  • Deklarieren Sie eine Variable als Arbeitsmappe.

Code:

 Sub Sample3 () Dim A As Workbook End Sub 

Versuchen Sie, die Arbeitsmappe, die wir derzeit bereits geöffnet haben, mit dem folgenden Code zu öffnen.

Code:

 Sub Sample3 () Dim A As Workbook Set wb = Workbooks.Open ("\\ VBA 1004 Error.xlsm", ReadOnly: = True, CorruptLoad: = xlExtractData) End Sub 

Führen Sie den obigen Code aus, um das Ergebnis anzuzeigen.

Dieser Fehler tritt auf, weil wir dieselbe Arbeitsmappe bereits geöffnet haben.

VBA-Laufzeitfehler 1004 - Beispiel # 5

Wir erhalten diese Fehlermeldung, wenn wir versuchen, eine Arbeitsmappe zu öffnen, die nicht existiert. Dies ähnelt in gewisser Weise dem oben genannten Fehler, da VBA die Arbeitsmappe nicht finden kann.

  • Klicken Sie auf der Registerkarte Entwickler auf Visual Basic, um den VB-Editor zu öffnen.
  • Deklarieren Sie eine Unterfunktion, um den Code zu schreiben.

Code:

 Sub Sample4 () End Sub 

  • Versuchen Sie, eine Arbeitsmappe mit dem folgenden Code zu öffnen:

Code:

 Sub Sample4 () Workbooks.Open Filename: = "C: \ EDUCBA Content \ April \ VBA OR Function.xlsm" End Sub 

  • Ich habe das Blatt bereits vom Speicherort gelöscht.
  • Führen Sie den Code aus, um das Ergebnis anzuzeigen.

Da das Blatt an der angegebenen Stelle nicht vorhanden ist, erhalten wir diesen Fehler.

Dinge, an die man sich erinnern sollte

  • Prüfen Sie immer auf Rechtschreibfehler.
  • Benennen Sie nicht mehrere Arbeitsblätter mit demselben Namen um.
  • Bevor Sie eine andere Referenz aufrufen, stellen Sie sicher, dass Sie das entsprechende Arbeitsblatt aktivieren.
  • Stellen Sie vor dem Öffnen eines anderen Arbeitsblatts sicher, dass der angegebene Pfad korrekt ist.

Empfohlene Artikel

Dies war eine Anleitung zum VBA 1004-Fehler. Hier haben wir Excel VBA Runtime Error 1004 zusammen mit praktischen Beispielen und einer herunterladbaren Excel-Vorlage besprochen. Sie können auch unsere anderen Artikelvorschläge durchgehen -

  1. Fehlerleiste in Excel hinzufügen oder entfernen
  2. VBA While-Schleife | MS Excel
  3. Grundlegendes zu Fehlern in Excel
  4. Verwenden von IFError in VBA

Kategorie: