Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
536to540
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
536to540
536to540
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Zufallsauswahl von Zellen

Zufallsauswahl von Zellen
22.12.2004 11:02:29
Zellen
Hallo,
ich habe eine Aufgabe, die ich mit Excel lösen soll.
Die Tabelle soll alle Tage (Tag mit Datum) auflisten (Spalte) zw. 1.3 und 31.10.05
Mit Hilfe eines Zufalssgenerators sollen 16 Termine zufällig in diesem Zeitrahmen ausgewählt werden können. (Irgendwie markieren oder an einer anderen Stelle im Sheet auflisten). Dieser Mechanismuss soll mit einem Knopfdruck an- und ausgeschaltet werden.
Ich würde gerne wissen ob Excel dies überhaupt kann und wenn ja unter welchen Stichworten muss ich suchen? Ich habe ein riesig dickes Excel 2000 Buch, doch da stehen solche sachen nicht drin. Evtl. ein kleiner Lösungsvorschlag wäre auch super.
Schonmal Danke im vorraus!
Gruss Martin.

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

Betreff
Datum
Anwender
Anzeige
AW: Zufallsauswahl von Zellen
22.12.2004 11:32:31
Zellen
Hallo Martin,
Schaltfläche aus Symbolleiste "Steuerelement-Toolbox" in dem Tabellenblatt einfach hinzufügen, zu dieser den VBA-Code eintragen:

Private Sub CommandButton1_Click()
Const AnzTermine As Integer = 16
Dim i&, lngZufall&, j&
Dim arrZufall() As Long, arrZeilen() As Long
Dim r As Range
i = Cells(Rows.Count, 1).End(xlUp).Row
ReDim arrZufall(AnzTermine - 1)
ReDim arrZeilen(i - 1)
Randomize
For j = 1 To i: arrZeilen(j - 1) = j: Next j
For j = 1 To AnzTermine
lngZufall = Int((i - j + 1) * Rnd + 1)
arrZufall(j - 1) = arrZeilen(lngZufall - 1)
arrZeilen(lngZufall - 1) = arrZeilen(i - j)
Next j
Set r = Cells(arrZufall(0), 1)
For j = 1 To AnzTermine - 1
Set r = Application.Union(r, Cells(arrZufall(j), 1))
Next j
'MsgBox r.Address(0, 0), , r.Count
r.Select
End Sub

Annahme: Sämtliche Termine stehen von Zelle A1 bis Zelle Axxx
Mit Klick auf die Schaltfläche werden 16 Termine zufällig aus Spalte A selektiert.
Hoffe das hilft weiter,
Andreas
Anzeige
AW: Zufallsauswahl von Zellen
Zellen
Hey.. ja super... nur leider kann ich es nicht testen...
ich schaff es nicht dem Excel den VN Code beizubringen? Sorry, ne doofe Frage aber hab mich noch nie wirklich mit Microsoft Produkten auseinandergesetzt...
Evtl. eine kleine Anleitung wäre ganz hilfreich und ich super froh! :-)
Gruss Martin.
AW: Zufallsauswahl von Zellen
22.12.2004 11:54:05
Zellen
Hallo Martin!
Das Datum steht von "A1" bis "A245"
Ausgabe der 16 termine In "B1:B16"

Sub zufallsZellen()
Dim rng As Range
Dim rngU As Range
Dim n As Integer
Set rng = Range("A1:A245")
n = rng.Count
Set rngU = rng(Int(Rnd * n) + 1)
Do
Set rngU = Union(rng(Int(Rnd * n) + 1), rngU)
Loop While rngU.Count < 16
rngU.Copy [B1:B16]
End Sub

Gruß Sepp
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige