Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1184to1188
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

Füllen durch Zufallsprinzip

Füllen durch Zufallsprinzip
Christian
Hallo,
ich möchte 100 Zellen durch Zufall mit dem Wert 1 füllen in Abhängigkeit einer Variable X die den Wert übergibt, wie oft die 1 in den 100 Zellen vorkommen soll.
Beispiel: X = 2
Zelle A1 = ""
Zelle A2 = 1
Zelle A3 = 1
Zelle A4 = ""
Hat jemand eine Excel bzw. VBA Idee?
Vielen Dank vorab
Christian

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Füllen durch Zufallsprinzip
27.10.2010 18:37:24
ransi
HAllo Christian
Teste mal selber:
Option Explicit


Public Sub test()
    Dim X As Integer
    Dim I As Integer
    Dim Z As Integer
    Dim L As Long
    Dim tmp
    Dim arr(1 To 100, 1 To 1)
    X = Application.InputBox("Sach an !", , , , , , , 1)
    For I = 1 To X
        arr(I, 1) = 1
    Next
    Randomize Timer
    For I = 1 To UBound(arr)
        Z = Int(UBound(arr) * Rnd) + 1
        tmp = arr(Z, 1)
        arr(Z, 1) = arr(I, 1)
        arr(I, 1) = tmp
    Next
    Range("A1:A100") = arr
End Sub



ransi
Anzeige
AW: Füllen durch Zufallsprinzip
27.10.2010 18:39:35
And
Hallo,
ein Beispiel, es gibt aber die klitzekleine Möglichkeit, dass mal
eine Zufallazahl doppelt ist und somit 1x die 1 mehr vorkommt.
In Zelle E3 steht die Anzahl der 1en zur Kontrolle
https://www.herber.de/bbs/user/72075.xls
Gruß Andreas
Klugscheissen
29.10.2010 10:29:39
Klaus
Hallo Andreas,
die Möglichkeit ist aber wirklich klitzeklein ... um nicht zu sagen null.
Da du die Zeilen über die RANG Funktion auswählen lässt, kommt auch bei 10 identischen kleinsten Zahlen die korrekte Anzahl von einsen heraus. Probiers mal aus!
Grüße,
Klaus M.vdT.
Anzeige
AW: Füllen durch Zufallsprinzip
27.10.2010 18:44:10
Oberschlumpf
Hi Christian
Versuch mal:
Sub sbZufall()
Dim liRow As Integer, liAnz As Integer
Randomize Timer
Range("A1:A100").Value = ""
Do Until WorksheetFunction.CountIf(Range("A1:A100"), "") = Range("B1").Value
liRow = Int((100 * Rnd) + 1)
Range("A" & liRow).Value = 1
Loop
End Sub

Der Wert x steht in B1 - oder - Range("B1").Value
Hilfts?
Ciao
Thorsten
AW: Füllen durch Zufallsprinzip
28.10.2010 13:59:51
Christian
Vielen Dank für die Antworten,
alle Möglichkeiten die mir aufgeboten wurden sind, funktionieren für meine Weise. Werde das ganze jetzt mal aufblasen und schauen, welches Prinzip das schnellste ist.
Danke nochmal
Gruß
Christian
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige