Thema Datum  Von Nutzer Rating
Antwort
06.05.2008 10:24:10 Falko
NotSolved
Blau Aw:Zufall in VBA
06.05.2008 17:27:49 jh
NotSolved
08.05.2008 09:34:22 Falko
NotSolved
08.05.2008 16:02:25 jh
NotSolved
09.05.2008 09:16:13 Falko
NotSolved
07.05.2008 15:06:41 Holger
NotSolved

Ansicht des Beitrags:
Von:
jh
Datum:
06.05.2008 17:27:49
Views:
1012
Rating: Antwort:
  Ja
Thema:
Aw:Zufall in VBA
Hallo,

Nimm dir eine unbenutzte Spalte (in meinem Beispiel Spalte F)
und fülle die Zeilen 1 bis 24 mit 0. Danach kannst du die Spalte
ausblenden, falls sie stört (Spalte markieren, Menü Format -
Spalte - Ausblenden).

Dim Zufallszahl As Integer
Randomize Timer
If Cells(24, 6) = 23 Then
Cells(1, 6) = 0
Range("F1:F24").FillDown
End If
Do
Zufallszahl = Int((23 * Rnd) + 1)
Loop Until Cells(Zufallszahl, 6) = 0
Cells(Zufallszahl, 6) = 1
Cells(24, 6) = Cells(24, 6) + 1
MsgBox Cells(Zufallszahl + 3, 4) & " " & _
Cells(Zufallszahl + 3, 5)

Falls du die Funktion nicht durchschaust: Spalte F dient als
Speicher für die bisher ermittelten Zufallszahlen. Wert 0 in
einer Zelle bedeutet, dass die Nummer der betreffenden Zeile
noch nicht "gezogen" wurde, sobald das geschieht, wird die
Zelle auf 1 gesetzt. Die Do-Loop-Schleife gewährleistet, dass
Zahlen, die bereits gezogen wurden, übergangen werden, indem
sie so lange läuft, bis eine Zahl ermittelt wird, die noch
nicht dran war. Zelle F24 dient als Zähler. Wenn sie den Wert
23 enthält, waren alle Zahlen von 1 bis 23 dran, die Zellen
werden auf 0 gesetzt und das Spiel beginnt von vorn. Die
Ausgabe geht wie du siehst auch ganz einfach ohne 23 mal
If-Then. Wenn du die Aktion mit einem CommandButton aus
der Steuerelement-Toolbox startest, musst du seine
TakeFocusOnClick-Eigenschaft auf False setzen, sonst
gibt es bei FillDown einen Fehler. Bei einem Button aus der
Symbolleiste Formular ist das nicht notwendig.
(Das Eigenschaftsfenster wird im Entwurfsmodus mit einem
Rechtsklick auf den Button und die Auswahl "Eigenschaften"
angezeigt.)

Gruß

Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
06.05.2008 10:24:10 Falko
NotSolved
Blau Aw:Zufall in VBA
06.05.2008 17:27:49 jh
NotSolved
08.05.2008 09:34:22 Falko
NotSolved
08.05.2008 16:02:25 jh
NotSolved
09.05.2008 09:16:13 Falko
NotSolved
07.05.2008 15:06:41 Holger
NotSolved