AW: Zufallszahlen
11.09.2006 10:44:19
Oberschlumpf
Hi Andreas
Versuch es mal so:
1. Trage im VBA-Editor in das Change-Ereignis der betroffenen Tabelle diesen Code ein
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A1:A10")) Is Nothing Then
ZufWerte
End If
End Sub
die 1. und letzte Zeile stehen schon im VBA-Editor
2. Füge im VBA-Editor ein allgemeines Modul hinzu und trage diesen Code ein:
Sub ZufWerte()
Dim lardbWerte(10) As Double, ldbZuf As Double, lboZuf As Boolean, ldbZufall(5, 6) As Double, liZeile As Integer, liSpalte As Integer, liZaehler As Integer, lstrAnzeige As String, liSumme As Integer
For liZeile = 1 To 10
lardbWerte(liZeile) = ActiveSheet.Range("A" & liZeile).Value
Next
For liZeile = 1 To 5
For liSpalte = 1 To 6
Randomize
ldbZuf = Int((10 * Rnd) + 1)
For liZaehler = 1 To 6
If ldbZufall(liZeile, liZaehler) = lardbWerte(ldbZuf) Then
lboZuf = True
Exit For
End If
Next
If lboZuf = True Then
lboZuf = False
liSpalte = liSpalte - 1
Else
ldbZufall(liZeile, liSpalte) = lardbWerte(ldbZuf)
End If
liZaehler = 1
Next
For liSumme = 1 To 6
lstrAnzeige = lstrAnzeige & ldbZufall(liZeile, liSumme) & " "
Next
lstrAnzeige = lstrAnzeige & vbCr & vbLf
Next
MsgBox lstrAnzeige
End Sub
Dieser Code reagiert nur bei Wertänderung in den Zellen A1 - A10
Um diesen Code eines Buttons hinzuzufügen, musst du so vorgehen:
1. Lösche den ersetn Teil des Codes wieder (der Code aus dem Change-Ereignis)
2. Füge in das Klick-Ereignis des Buttons diese Zeile ein
ZufWerte
Konnte ich helfen?
Ciao
Thorsten