Rubrik: Variablen/Strings · Sonstiges | VB-Versionen: VB5, VB6 | 03.11.02 |
Incr und Decr in VB Zählervariablen erhöhen / verringern einmal anders | ||
Autor: Roland Wutzke | Bewertung: | Views: 15.040 |
www.vb-power.net | System: Win9x, WinNT, Win2k, WinXP, Win7, Win8, Win10, Win11 | kein Beispielprojekt |
In jedem größeren Projekt kommen immer wieder Zählervariablen vor, die sehr oft nur um den Wert 1 erhöht oder verringert werden. Also schreibt man im Code oft folgende Zeile:
Schleifenzähler = Schleifenzähler + 1
Übergibt man eine Variable an eine Sub oder Function, wird diese standardmäßig referenziert (ByRef). Diesen Umstand können wir nutzen und uns viel Tipparbeit sparen. Legen Sie folgende zwei Subs in einem Modul an:
' Increase... Public Sub Incr(ByRef nZahl As Variant, _ Optional ByVal xWert As Variant = 1) nZahl = nZahl + xWert End Sub
' Decrease... Public Sub Decr(ByRef nZahl As Variant, _ Optional ByVal xWert As Variant = 1) nZahl = nZahl - xWert End Sub
An den beiden Subs Incr (Increase = erhöhen) und Decr (Decrease = verringern) können beliebige lokale oder globale Zahl-Variablen übergeben werden, aber Vorsicht, es findet keine Bereichsüberprüfung statt!
Der Aufruf sieht wie folgt aus:
' Variable "Zähler" um den Wert 1 erhöhen
Incr Zähler
' Variable "Zähler" um den Wert 1 verringern
Decr Zähler
Optional können den Subs auch einen anderen Wert als 1 übergeben werden:
' Variable "Zähler" um den Wert 5 erhöhen Incr Zähler, 5
' Variable "Zähler" um den Wert 3 verringern Decr Zähler, 3
Der Aufruf der Subs darf nicht geklammert werden (z.B. Decr (Zähler, 1)), da sonst die Variable als Wert (ByVal) übergeben wird und somit nicht erhöht oder verringert wird.