Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1280to1284
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Zufallszahlen...

Zufallszahlen...
17.10.2012 15:19:49
Anne
Hallo ihr lieben, ich hoffe ihr könnt mir helfen.
gut ich versuche es mal zu erklären.
also es geht um Zufallszahlen von 1-30. ich habe jetzt selber zahlen geschrieben und möchte das sie per Makro weiter geschrieben werden. es können immer 6 zahlen gezogen werden. Jede zahl hat eine eigene spalte.
also A1 2, B1 5, C1 11, D1 23, E1 30
A2 3, B2 5, C2 10, D2 25, E2 29 usw.
ich will so 30 reihen selber tippen und das Makro soll dann weiter machen so 5 reihen weiter.
geht das?
würde mich freuen wenn ihr mir helfen könnt...

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zufallszahlen...
17.10.2012 15:29:32
Anne
Achso es sollen auch beachtet werden wie oft die zahlen gezogen werden.

AW: Zufallszahlen...
17.10.2012 18:15:33
Matze,Matthias
Hallo Anne,
Mache eine Neue Datei und füge dieses Makro von Nonet in ein neues VBA Modul ein.
Es generiert in Jeder Spalte 6 Zufallslottozahlen.
Zeile 8 ( dient zur Kontrolle - muss immer eine 6 stehen)
Plus eine Auswertung wie oft Jede Zahl vorkommt.

Option Explicit
Sub Lotto6aus49OhneDupletten()
'01.09.2009, NoNet - www.excelei.de
Dim intZahlen(1 To 49) As Integer, dblMisch(1 To 49) As Double
Dim intGezogen(1 To 49)
Dim intS As Integer, intT As Integer
Dim dblX As Double, intY As Integer, intZiehung As Integer
For intZiehung = 1 To 50 'Anzahl der Ziehungen bitte anpassen !!
For intT = LBound(intZahlen) To UBound(intZahlen)
'Zufallszahl zum Mischen der Grundzahlen und Verhindern von Dupletten :
dblMisch(intT) = Rnd()
intZahlen(intT) = intT
If intZiehung = 1 Then intGezogen(intT) = 0
Next
'Grundzahlen nach Zufallszahlen sortieren
For intS = LBound(intZahlen) To UBound(intZahlen)
For intT = 1 To intS
If dblMisch(intS) > dblMisch(intT) Then
intY = intZahlen(intS)
intZahlen(intS) = intZahlen(intT)
intZahlen(intT) = intY
dblX = dblMisch(intS)
dblMisch(intS) = dblMisch(intT)
dblMisch(intT) = dblX
End If
Next
Next
'Gezogene Zahlen aufaddieren (Merken, wie häufig welche Zahlen gezogen wurden) :
For intS = 1 To 6
intGezogen(intZahlen(intS)) = intGezogen(intZahlen(intS)) + 1
Next
'6 Zufallszahlen anzeigen
Cells(1, intZiehung).Resize(6) = Application.Transpose(intZahlen())
'Diese Funktion in Zeile 8 dient der Kontrolle : muss immer 6 ergeben !
Cells(8, intZiehung).FormulaArray = "=SUM(1/COUNTIF(R[-7]C:R[-2]C,R[-7]C:R[-2]C))"
Next
'Ausgabe der Anzahl gezogener Zahlen :
[A10:B10] = Array("Zahl :", "Gezogen :") 'Überschriften
For intS = LBound(intZahlen) To UBound(intZahlen)
Cells(intS + 10, 1) = intS
Cells(intS + 10, 2) = intGezogen(intS)
Next
'Absteigend Sortieren nach Anzahl gezogener Zahlen :
[A11].CurrentRegion.Sort Key1:=Range("B11"), Order1:=xlDescending
Cells.Columns.AutoFit 'Spaltenbreiten automatisch anpassen
End Sub
Gruß Matze
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige