Rubrik: Variablen & Strings | 15.01.03 |
Zufallsbuchstaben VB-Version: VB5, VB6 | ||
Views: 16.673 |
Wie man Zufallszahlen bekommt habe ich ja schon beschrieben. Sie möchtenaber lieber Zufallsbuchstaben? Oder besser noch: auch Zufallszeichen? Ok. Hierdas Beispiel. Sie brauchen eine Form mit einem CommandButton und einem Label unddiesen Code:
Private Sub Command1_Click() Dim A As Byte ' Zufallsgenerator aktivieren Randomize Timer ' aus 26 Großbuchstaben einen zufällig auswählen ' und im Label anzeigen A = Int(26 * Rnd + 1) + 64 Label1.Caption = Chr(A) End Sub
Wahrscheinlich fragen Sie sich jetzt, warum Sie nur Großbuchstaben bekommen. Das liegt an dieser Zeile:
A = Int(26 * Rnd + 1) + 64
Die Zahl 26 bezeichnet hier die Obergrenze der auszuwählenden Zahlen. Die +1 nach Rnd bewirkt, dass die Zahl 0 nicht ermittelt wird. Die Zahl 64 muss hinzuaddiert werden, da der erste Buchstabe in der ASCII-Tabelle die Position 65 hat. Angenommen, Sie möchten nur Kleinbuchstaben erhalten, so müsste die Zeile wie folgt aussehen:
A = Int(26 * Rnd + 1) + 96
da der erste Kleinbuchstabe in der ASCII-Tabelle die Position 97 hat. Möchten Sie nun alles gemischt haben, also Groß-, Kleinbuchstaben und Sonderzeichen müssen Sie die erste Zahl im Code abändern, z. B.:
A = Int(58 * Rnd + 1) + 64
Somit liegt der Wertebereich der zu ermittelnden Zahl zwischen 1 und 97. Dass Sie tatsächlich Buchstaben und Sonderzeichen und keine Zahlen erhalten, dafür ist diese Codezeile verantwortlich:
Label1.Caption = Chr(A)
Mit der Chr-Funktion wird der ASCII-Zeichencode in das entsprechende Zeichen umgewandelt.