Εμφάνιση ενός μόνο μηνύματος
  #1  
Παλιά 11-11-09, 09:43
Ms-Office-Development Team Ο χρήστης Ms-Office-Development Team δεν είναι συνδεδεμένος
Υπηρεσία υποστήριξης
Όνομα: °°°°°°°°°°°°°°°°°°
Έκδοση λογισμικού Office: Ms-Office 2003, Ms-Office 2007, Ms-Office 2010
Γλώσσα λογισμικού Office: Αγγλική, Γερμανική, Γαλλική
 
Εγγραφή: 10-11-2009
Μηνύματα: 42
Προεπιλογή Εκτύπωση τυχαίων Εγγραφών και αριθμών

Χρήση της συνάρτησης Rnd() της VBA Access.

Δημιουργούμε μία συνάρτηση Από - Έως (Ελάχιστος αριθμός - Μέγιστος αριθμός )

κώδικας:

Function Randomize(Min,Max as integer) as integer
Randomize=Int ((Max-Min + 1) * Rnd + Min)
End function

Η παραπάνω συνάρτηση επιστρέφει μία τιμή μέσα στο εύρος Min,Max.Μετά σε έναν πίνακα (TblQuestions) ο οποίος πρέπει να έχει και ένα πεδίο (RandomizeID) και αυτό το πεδίο θα ενημερώνεται με τις τιμές που θα επιστρέφει το Randomize για κάθε εγγραφή ξεχωριστά (Με Χρήση RecordSets γεμίζει κάθε εγγραφή ξεχωριστά).
Έτσι θα έχετε το πεδίο RandomizeID με τιμές από Min,Max.


[Παραθέτoυμε αποσπασματικά μέρος κώδικα]
κώδικας:

set RcdSetRand=currentdb.OpenRecordset("Select * From TblQuestions")
RcdSetRand.Fields("RandomizeID")=Randomize(100,150)



Ενημέρωνεται το SQL String σε ένα κενό ερώτημα ("QryQuestions") ή στην σχεδίαση του ερωτήματος, επιλέγετε Προβολή SQL.

Currentdb.QueryDefs("QryQuestions").SQL="SELECT TOP " & RecordNo &" TblQuestions.* FROM TblQuestions ORDER BY TblQuestions.RandomizeID DESC"

Τελευταία επεξεργασία από το χρήστη Ms-Office-Development Team : 23-11-09 στις 00:06.
Απάντηση με παράθεση