Option Base

Aus DBWiki
Wechseln zu: Navigation, Suche

Die Option Base - Anweisung im Modulkopf setzt die unteren Arraygrenzen aller im Modul verwendeter Arrays auf den mit dieser Anweisung angegebenen Wert.

Option Explicit
Option Base 1
 
Sub Zaehle()
 
Dim z As Integer
Dim strNummern(4)As String
 
strNummern(4) = "Vier"
strNummern(3) = "Drei"
strNummern(2) = "Zwei"
strNummern(1) = "Eins"
strNummern(0) = "Null"
 
'Herunterzählen von 4 bis 0
For i = UBound(strNummern) To LBound(strNummern) Step -1
  Debug.Print strNummern(i)
Next
 
End Sub

Dieses Verhalten kann wie das obige Beispiel sehr rasch zu einem Fehler führen, wenn für ein bestimmtes Array der Standardwert der unteren Arraygrenze - also 0 angenommen wird.

Im obigen Fall wird die Ausführung des Codes mit dem Laufzeitfehler '9' (Index ausserhalb des gültigen Bereichs) unterbrochen.

Wiki hinweis.png Tipp: Wegen der potentiell vorhandenen Fehlergefahr, die mit dieser Anweisung verbunden ist, sollte auf die Verwendung von Option Base besser verzichtet werden!