VBA-Laufzeitfehler ‚11‘: Division durch Null

Laufzeitfehler ‚11‘

Dies ist ein Fehler, der auftritt, wenn eine mathematische Operation in einem Makro versucht, eine Zahl durch Null zu dividieren. Dieser Fehler wird ausgelöst, da das Teilen einer beliebigen Zahl durch Null zu einem undefinierten Wert führt und daher nicht berechnet werden kann.

Dies sind mehrere mögliche Ursachen für den Fehler:

  • Falsche Berechnungen
  • Fehlende oder falsche Eingabedaten
  • Falsche Verwendung der IF-Anweisung

Wir werden uns jede dieser möglichen Ursachen ansehen und eine Lösung anbieten.

Was verursacht den Fehler?

Bevor Sie mit der Behebung des Fehlers fortfahren, müssen Sie die Fehlerursache in Ihrem VBA-Code identifizieren. Die Codezeile, die den Fehler verursacht, wird gelb hervorgehoben, sobald die Debug-Schaltfläche gedrückt wird.

Ursache 1: Falsche Berechnungen.

Die häufigste Ursache für den Fehler „Division by Zero (Error 11)“ sind falsche Berechnungen in einem Makro. Dies kann auftreten, wenn ein Makro versucht, eine Zahl explizit oder aufgrund einer falschen Berechnung durch Null zu dividieren.

Sub Example()
Dim x As Double
Dim y As Double

x = 10
y = 0

'Attempting to divide by zero, which will cause a runtime error 11
Range("A1").Value = x / y

End Sub

Lösung:

Auf falsche Berechnungen prüfen: Wenn Sie glauben, dass der Fehler auf eine falsche Berechnung im Makro zurückzuführen ist, überprüfen Sie die Berechnung, um sicherzustellen, dass sie korrekt ist. Wenn die Berechnung eine Zahl durch Null dividiert, ändern Sie entweder die Berechnung, um die Division durch Null zu vermeiden, oder stellen Sie sicher, dass der Divisor niemals Null ist.

Ursache 2: Fehlende oder falsche Eingabedaten.

Eine weitere häufige Ursache für diesen Fehler sind fehlende oder falsche Eingabedaten. Wenn ein Makro entwickelt wurde, um eine Zahl durch einen Wert zu dividieren, der in einer Zelle oder Variablen gespeichert ist, und dieser Wert Null ist oder fehlt, tritt der Fehler auf.

Lösung:

Überprüfung auf fehlende oder falsche Eingabedaten: Wenn der Fehler auf fehlende oder falsche Eingabedaten zurückzuführen ist, stellen Sie sicher, dass die erforderlichen Daten eingegeben oder korrigiert werden.

Ursache 3: Falsche Verwendung der IF-Anweisung.

Der Fehler „Division by Zero (Error 11)“ kann auch auftreten, wenn ein Makro eine IF-Anweisung verwendet, um eine Berechnung basierend auf bestimmten Bedingungen durchzuführen. Wenn die Bedingungen in der IF-Anweisung zu einer Division durch Null führen, tritt der Fehler auf.

Lösung:

Wenn der Fehler auf eine unsachgemäße Verwendung der IF-Anweisung zurückzuführen ist, überprüfen Sie die Anweisung und stellen Sie sicher, dass die Bedingungen nicht zu einer Division durch Null führen. Wenn dies der Fall ist, ändern Sie die Anweisung, um die Division durch Null zu vermeiden.

Benötigen Sie einen VBA Programmierer?

Wir als exact construct programmieren mit einem Team von rd. 20 Mitarbeitern seit über 10 Jahren Excel-Tools. Wir sind ein Nischenanbieter der spezialisiert auf Makros/VBA-Codes ist. Daneben unterstützen wir auch als 3rd Level Support die IT-Abteilungen rund um Probleme bei MS Office (Excel, Word, PowerPoint, etc.).

Haben Sie ein Excel-Problem? Benötigen Sie einen Makro-Programmierer? Rufen Sie uns unverbindlich an +41 52 511 05 25 oder kontaktieren Sie uns via Kontaktformular.

Kommentar verfassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Nach oben scrollen