rnd mit vorheriger Auswahl der Anzhal (Access)

Martin Asal @, Mittwoch, 02.09.2020, 16:21 (vor 26 Tagen) @ Floyd

Hallo Floyd,

eigentlich hatte ich mir das ca wie folgt vorgestellt:

SELECT TOP [Geben sie eine Zahl ein] *
FROM TAB1
ORDER BY Rnd(ID);

Aber wie ich gerade festgestellt habe, kann man Paramterwerte wohl an dieser Stelle nicht verwenden. Sorry. Man lernt halt nie aus...

Da bleibt nur VBA. Nehmen wir an, du willst den Wert in einem Formular in ein Textfeld namens "Text1" eingeben, wäre das hier ein Ansatz:

Private Sub Text1_AfterUpdate()
Dim db As DAO.Database, rs As DAO.Recordset
 
Set db = CurrentDb
Set rs = db.OpenRecordset("SELECT Top " & Me.Text1 & " * FROM TAB1 ORDER BY Rnd(ID)")
 
rs.MoveLast
MsgBox rs.RecordCount
 
Set rs = Nothing
Set db = Nothing
End Sub


Was du sonst so mit dem Recordset machst, bleibt dir überlassen :-)


Martin


gesamter Thread:

 RSS-Feed dieser Diskussion

powered by my little forum