Option Explicit benutzen oder nicht in Excel VBA
In diesem Tutorial gehe ich der Frage nach ob man Option Explicit benutzen sollte oder nicht. Also mein Fazit steht da schon fest. Vor allem wenn man noch kein Profi ist, dann sollte man Option Explicit auf jeden Fall verwenden um unnötige Fehler zu vermeiden. Durch Option Expicit wird man dazu gezwungen Variablen zu deklarieren und gerade bei einem Schreibfehler wird dadurch sehr schnell sichtbar welche Variable da aus der Reihe tanzt.
Das Startvideo der VBA Tutorial Serie auf YouTube findet Ihr hier
Die Playlist meiner VBA Tutorial Serie auf YouTube findet Ihr hier
Achtung:
Benutzt zum Üben eine separate Tabelle für Testzwecke oder eine Kopie des Originals damit Euch keine Daten verloren gehen.
Video zu diesem Tutorial:
Beispielscript: ohne Option Explicit mit Fehler
Hier ist ein sehr kleines Beispiel, was Euch aber zeigt dass sehr schnell ein Fehler passieren kann wenn man Option Explicit nicht benutzt. Im ersten Code habe ich Option Explicit ausgeschaltet und die Variablen auch nicht deklariert. Wenn man den Code jetzt ausführt, dann wird man auf ein falsches Ergebnis kommen, weil einer der Variablen einen Schreibfehler hat.
Bei diesem Beispiel fällt das natürlich auch direkt auf, weil es nur sehr wenig Code ist. Sollte man aber sehr viele und vor allem große Prozeduren haben, dann kann solch ein Schreibfehler ziemlich böse Folgen haben.
Sub OptionExplicitTutorial() ErsteVariable = Range("A1").Value ZweiteVariable = Range("A2").Value DritteVariable = Range("A3").Value Range("A5") = (ErsteVariable + ZweitVariable + DritteVariable) End Sub
Beispielscript: mit Option Explicit ohne Fehler
In diesem Beispiel habe ich Option Explicit eingeschaltet. Wenn ich die Variablen nicht deklariert hätte, wäre es zu einem Fehler gekommen, zumindest hätte es der Compiler angemeckert.
Anschließend würde der Compiler auch jeden Schreibfehler erkennen, denn er würde merken dass die Variable die den Schreibfehler enthält nicht deklariert worden ist. Und genau dann fällt uns der Fehler nämlich auf. Deshalb meine Empfehlung dass man Option Explicit vor allem bei größeren Projekten immer benutzen sollte.
Option Explicit Sub OptionExplicitTutorial() Dim ErsteVariable As Integer Dim ZweiteVariable As Integer Dim DritteVariable As Integer ErsteVariable = Range("A1").Value ZweiteVariable = Range("A2").Value DritteVariable = Range("A3").Value Range("A5") = (ErsteVariable + ZweiteVariable + DritteVariable) End Sub
Das könnte Dich auch interessieren
- Arbeitsmappe erstellen und speichern in Excel VBA
- Do Loop Schleife in Excel VBA
- Excel VBA Module schneller hinzufügen
- For Each Schleife in Excel VBA
- For Next Schleife in Excel VBA
- Gefüllte Zellen markieren mit und ohne Lücken in Excel VBA
- Gültigkeitsbereich von Variablen in Excel VBA
- Hello World mit Excel VBA programmieren