Ανανέωση ιστοσελίδας
ms-office.gr > Forum > Microsoft Access > Access - Ερωτήσεις / Απαντήσεις > [ Συναρτήσεις ] Παραγωγή τυχαίου και μοναδικών αριθμών

Access - Ερωτήσεις / Απαντήσεις Access + VBA... Εδώ δεν υπάρχουν όρια!

Απάντηση στο θέμα

 

Εργαλεία Θεμάτων Τρόποι εμφάνισης
  #1  
Παλιά 08-10-17, 12:01
Όνομα: Δημήτρης
Έκδοση λογισμικού Office: Ms-Office 2016
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 20-07-2014
Περιοχή: Πάτρα
Μηνύματα: 385
Προεπιλογή Παραγωγή τυχαίου και μοναδικών αριθμών

Καλησπέρα

Για την παραγωγή τυχαίων τετραψήφιων αριθμών (1000 έως 9999) χρησιμοποιώ
τον τύπο: 1000 + Int(9000*Rnd).

Ας υποθέσουμε οτι χρησιμοποιούμε τον τύπο και μας δίνει τον τυχαίο αριθμό 2591.

Υπάρχει περίπτωση να επαναληφθεί ο αριθμός αυτός σε επόμενες χρήσεις παραγωγής
άλλων αριθμών?
Απάντηση με παράθεση
  #2  
Παλιά 08-10-17, 12:57
Όνομα: Γιώργος
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 18-06-2010
Μηνύματα: 3.674
Προεπιλογή

Καλησπέρα

Δημήτρη, από το 1.000 μέχρι και το 9.999 έχουμε 9.000 διαφορετικούς ακέραιους.

Μπορούμε να θεωρήσουμε, με τον τρόπο που τους επιλέγεις, ότι έχουν την ίδια πιθανότητα επιλογής.

Αν υποθέσουμε ότι έχουν επιλεχθεί N διαφορετικοί, ο επόμενος που θα επιλεχθεί θα έχει πιθανότητα Ν/9000 να είναι κάποιος από τους επιλεγμένους.

Είναι φανερό ότι όσο προχωράει η επιλογή τόσο θα αυξάνεται η πιθανότητα επιλογής κάποιου επιλεγμένου και μετά από 4.500 επιλογές, θα υπερβαίνει το 50%.
Απάντηση με παράθεση
  #3  
Παλιά 08-10-17, 19:45
Όνομα: Δημήτρης
Έκδοση λογισμικού Office: Ms-Office 2016
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 20-07-2014
Περιοχή: Πάτρα
Μηνύματα: 385
Προεπιλογή

Φίλε Γιώργο,

Σ`ευχαριστώ για την τοποθέτησή σου και χαίρομαι ιδιαίτερα που μιλάμε ξανά.

Η ανάλυσή σου είναι πλήρως κατατοπιστική και ξεκαθαρίζει τα πράγματα.
Ωστόσο, θα ήθελα να αναφέρω επιπροσθέτως ότι, όταν διατύπωνα το ως άνω ερώτημά μου,
είχα κατά νου την πιθανότητα (θεωρούσα) ότι η access "θυμάται" τούς αριθμούς που παρήγαγε κατά το παρελθόν,
παρά το γεγονός ότι είχα μελετήσει την εξαιρετική μεθοδολογία σου για το ίδιο αντικείμενο:
(http://www.ms-office.gr/forum/access...-arithmon.html).

Παρόλα αυτά θα ήθελα να ρωτήσω το εξής:
Στη συνημμένη βάση υπάρχει μια φόρμα. Με τη φόρτωση της φόρμας, στο πεδίο [gen]
παράγεται ένας τυχαίος 4ψήφιος αριθμός βάσει VBA.

Είναι δυνατόν, με κάποιον τρόπο, με τη φόρτωση της φόρμας να παράγεται τυχαίος 4ψήφιος αριθμός που δεν έχει
επαναληφθεί (παραχθεί) κάποια στιγμή στο παρελθόν,

α. Χωρίς τη χρήση πίνακα!!!
β. Με τη χρήση πίνακα.
Συνημμένα Αρχεία
Τύπος Αρχείου: accdb Generator.accdb (356,0 KB, 13 εμφανίσεις)

Τελευταία επεξεργασία από το χρήστη dimitrisp : 08-10-17 στις 20:06.
Απάντηση με παράθεση
  #4  
Παλιά 09-10-17, 12:39
Όνομα: Γιώργος
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 18-06-2010
Μηνύματα: 3.674
Προεπιλογή

Καλησπέρα

Δημήτρη, για να αποτραπεί η επαναχρησιμοποίηση κάποιου τυχαίου αριθμού, θα πρέπει οι χρησιμοποιηθέντες να αποθηκεύονται κάπου μονίμως (όχι στη μνήμη RAM).

Θα μπορούσαν να αποθηκεύονται, για παράδειγμα, σε κάποιο αρχείο κειμένου, σε μια εξωτερική ΒΔ, κλπ, αλλά βολικότερη είναι η αποθήκευσή τους σε πίνακα της τρέχουσας ΒΔ.

Στη συνημμένη ΒΔ οι χρησιμοποιηθέντες τυχαίοι αποθηκεύονται στον πίνακα Table1.

Πιο συγκεκριμένα:

1) Πατώντας το κουμπί [Δημιουργία Τυχαίων Αριθμών] δημιουργούνται όλοι οι μοναδικοί ακέραιοι τυχαίοι αριθμοί στο διάστημα [1000, 9999] και αποθηκεύονται στον πίνακα [table1].

Σημείωση: Διευκρινίζω ότι οι τυχαίοι είναι συγκεκριμένοι (όλοι οι ακέραιοι από 1000 έως και 9999), η θέση τους όμως μέσα στον πίνακα είναι τυχαία.

2) Κάθε φορά που φορτώνουμε τη φόρμα ή πατούμε το κουμπί [Εντολή2], επιλέγεται και εμφανίζεται ένας μη χρησιμοποιηθείς τυχαίος και ταυτόχρονα τσεκάρεται ως χρησιμοποιηθείς.

Έτσι αποτρέπεται να επιλεχθεί και να εμφανιστεί ξανά.
Συνημμένα Αρχεία
Τύπος Αρχείου: accdb Generator2.accdb (1,35 MB, 40 εμφανίσεις)
Απάντηση με παράθεση
  #5  
Παλιά 10-10-17, 12:37
Όνομα: Δημήτρης
Έκδοση λογισμικού Office: Ms-Office 2016
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 20-07-2014
Περιοχή: Πάτρα
Μηνύματα: 385
Προεπιλογή

Καλησπέρα

Φίλε Γιώργο, θερμές ευχαριστίες για όλα.
Η μέθοδος που προτείνεις τη βρίσκω εξαιρετική και ιδιαιτέρως χρήσιμη.

Καλή συνέχεια...
Απάντηση με παράθεση
Απάντηση στο θέμα


Δικαιώματα - Επιλογές
Δε μπορείτε να δημοσιεύσετε νέα μηνύματα
Δε μπορείτε να δημοσιεύσετε απαντήσεις
Δεν μπορείτε να επισυνάψετε αρχεία
Δεν μπορείτε να επεξεργαστείτε τα μηνύματα σας

Ο κώδικας ΒΒ είναι σε λειτουργία
Τα Smilies είναι σε λειτουργία
Ο κώδικας [IMG] είναι σε λειτουργία
Ο κώδικας HTML είναι εκτός λειτουργίας
Trackbacks are εκτός λειτουργίας
Pingbacks are εκτός λειτουργίας
Refbacks are εκτός λειτουργίας


Παρόμοια Θέματα

Θέμα Δημιουργός Forum Απαντήσεις Τελευταίο Μήνυμα
[Συναρτήσεις] Αυτόματη αρίθμηση μοναδικών ακέραιων αριθμων ΑΠΟΣΤΟΛΗΣΚ Excel - Ερωτήσεις / Απαντήσεις 3 15-10-16 13:37
Παραγωγή τυχαίου αριθμού-Πρόβλημα parara Access - Ερωτήσεις / Απαντήσεις 3 06-05-16 18:02
Παραγωγή τυχαίου αριθμού & απενεργοποίηση VBA parara Access - Ερωτήσεις / Απαντήσεις 2 25-03-16 08:52
Παραγωγή τυχαίων αριθμών και εκτύπωση pm4698 Access - Ερωτήσεις / Απαντήσεις 1 03-11-14 19:38
Δημιουργία μοναδικών τυχαίων αριθμών kapetang Access samples - Χρήσιμα αρχεία & παραδείγματα 0 20-10-13 17:22


Η ώρα είναι 18:59.