Live-Forum - Die aktuellen Beiträge
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

Zufallsauswahl (Stichprobe)

Zufallsauswahl (Stichprobe)
02.10.2012 17:08:57
TobiasS
Hallo!
Ich habe einen Datensatz mit 190 Probanden. Hiervon möchte ich 150 per Zufallsauswahl heraussuchen. Da ich den internen Zufallszahlenalgorithmus aber nicht kenne, wollte ich mal fragen, ob der Ansatz so in Ordnung ist oder ob ich noch etwas anpassen soll.
Falls der Code ok geht, wäre eine kurze bestätigung nett, dann kann jemand anders den ja auch verwenden.
Danke schonmal!
Sub zufallsauswahl()
Dim cell As Range
Call beispiel
With Worksheets("Tabelle2")
.Range(Cells(2, 2), Cells(190, 2)).Select
For Each cell In Selection
cell = Rnd()
Next
.Range("A1:B190").Sort Key1:=.Range(Cells(1, 2), Cells(190, 2)), Header:=xlYes
.Range("A1:B150").Sort Key1:=.Range(Cells(1, 1), Cells(190, 1)), Header:=xlYes
.Range(Cells(151, 1), Cells(190, 2)).Delete
End With
End Sub
Sub beispiel()
Dim i As Integer
With Sheets("Tabelle2")
.Range("A1").Value = "Anzahl"
.Range("B1").Value = "Zufallszahlen"
For i = 2 To 190
.Cells(i, 1) = i
Next
End With
End Sub

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zufallsauswahl (Stichprobe)
03.10.2012 13:06:56
fcs
Hallo Tobias,
dein Makro wählt nur 149 Probanden aus.
Außer muss du darauf achten, dass wenn du mit With Tabellenblatt arbeitest nicht nur vor Range der Punkt steht, sondern auch auch vor Cells.
Es gibt sonst Probleme, je nachdem welches Tabellenblatt beim Start des Makros das aktive Blatt ist.
Ich würde das in dem Fall wie folgt anpassen/vereinfachen, so dass Anzahl Probanden und Auswahl-Anzahl einfach angepasst werden können.
Gruß
Franz

Private Const Anzahl As Long = 190, Auswahl As Long = 150
Sub zufallsauswahl()
Dim cell As Range
Call beispiel
With Worksheets("Tabelle2")
For Each cell In .Range(.Cells(2, 2), .Cells(Anzahl + 1, 2)).Cells
cell = Rnd()
Next
.Range(.Cells(1, 1), .Cells(Anzahl + 1, 2)).Sort Key1:=.Cells(1, 2), Header:=xlYes
.Range(.Cells(Auswahl + 2, 1), .Cells(Anzahl + 1, 2)).Delete
.Range(.Cells(1, 1), .Cells(Auswahl + 1, 2)).Sort Key1:=.Cells(1, 1), Header:=xlYes
End With
End Sub
Sub beispiel()
Dim i As Integer
With Sheets("Tabelle2")
.Range("A1").Value = "Anzahl"
.Range("B1").Value = "Zufallszahlen"
For i = 2 To Anzahl + 1
.Cells(i, 1) = i - 1
Next
End With
End Sub

Gruß
Franz

Anzeige
AW: Zufallsauswahl (Stichprobe)
04.10.2012 08:16:59
TobiasS
hallo Franz
danke für den Hinweis mit dem Punkt bei Cells!
das mit den constanten find ich super!
merci!
tobi!

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige