Lady1201 Geschrieben 27. Februar 2004 Geschrieben 27. Februar 2004 Hallo, ich hoffe ihr könnt mir weiterhelfen ... Möchte mir über VB6 aus einer Access-Tabelle z. B. 10 Datensätze anzeigen lassen. Hierbei sollen aber die Datensätze zufällig durch die programmierte Anwendung ausgewählt werden. Mein Problem ist nun, dass ich mir nicht sicher bin, wie ich dieses "zufällige" hinbekomme. Habe schon überlegt, ob das mit rnd() geht. Wie ich mir Datensätze generell anzeigen lasse, ist mir klar. Hoffe, ihr könnt mir Tipps geben, LG Zitieren
-roTekuGeL- Geschrieben 27. Februar 2004 Geschrieben 27. Februar 2004 mh wie wärs denn wenn du die ganze tabelle erstmal in ein Listview oder so einliest und die Datensätze darin dann mischst? Zitieren
Lady1201 Geschrieben 27. Februar 2004 Autor Geschrieben 27. Februar 2004 weiß nicht ... will mir einen Vokabeltrainer bauen, bei dem ich auswählen kann, wie viele Vokabeln abgefragt werden sollen und der dann nach und nach zufällig die entsprechende Anzahl über Textboxen abfragt/ausgibt. Dachte, es gibt evtl. eine Möglichkeit, wie jedesmal andere Vokabeln abgefragt werden können. Zitieren
Peregrin Geschrieben 27. Februar 2004 Geschrieben 27. Februar 2004 hi, mit Rnd() kannst du dir zufallszahlen erzeugen lassen. dazu am besten die msdn fragen. CLng(Rnd() * (max - min)) + min erzeugt ganzzahlige zufallszahlen zur zeilenermittlung zwischen den werten max und min. achtung! code ungetestet, keinerlei garantie dass es funtioniert... Zitieren
Mr.Brot Geschrieben 27. Februar 2004 Geschrieben 27. Februar 2004 Function Zufallszahl(ByVal min, ByVal max) Dim z Randomize 'Zufallsgenerator initialisieren z = Rnd 'Zufallszahl (liegt zwischen 0 und 1) Zufallszahl = Int(min + (max - min + 1) * z) End Function Damit funktionierts sicher! ist getestet. Zitieren
-roTekuGeL- Geschrieben 27. Februar 2004 Geschrieben 27. Februar 2004 Original geschrieben von Peregrin CLng(Rnd() * (max - min)) + min aber damit kann es vorkommen, dass Datensätze doppelt auftreten... Zitieren
Peregrin Geschrieben 27. Februar 2004 Geschrieben 27. Februar 2004 Original geschrieben von |roTekuGeL| aber damit kann es vorkommen, dass Datensätze doppelt auftreten... ... was aber bei zufallszahlen wohl immer programmatisch abgefangen werden muss oder hast du eine bessere/andere lösung? @ Mr.Brot: ja, die + 1 fehlte bei mir. Zitieren
-roTekuGeL- Geschrieben 27. Februar 2004 Geschrieben 27. Februar 2004 Original geschrieben von Peregrin ... was aber bei zufallszahlen wohl immer programmatisch abgefangen werden muss oder hast du eine bessere/andere lösung? nönö... passt schon so, ich äußere nur konstruktive kritik Zitieren
Lady1201 Geschrieben 27. Februar 2004 Autor Geschrieben 27. Februar 2004 Schon mal danke für eure Hilfe: Generiere jetzt eine Zufallszahl zwischen 1 und der momentanen Anzahl der Datensätze der Tabelle. Mein Problem ist jetzt allerdings, wie spreche ich die Zeile X der Spalte Deutsch an? X steht hier für die Zufallszahl, die ich ermittelt habe. Irgendwie stehe ich gerade auf der Leitung! Zitieren
fireworker Geschrieben 2. März 2004 Geschrieben 2. März 2004 Alle Zeilen in ein Recordset auslesen und den Xten ausgeben. For i=0 to X rs.MoveNext Next i[/PHP] Jetzt ist er genau an der Stelle X. Ausgabe: [PHP]txtDeutsch.DataField="Deutsch" txtDeutsch.DataSource = rs Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.