Πώς να δημιουργήσετε τυχαίους αριθμούς στο Excel χωρίς επαναλήψεις

  • Μοιραστείτε Αυτό
Michael Brown

Σε αυτό το άρθρο, θα συζητήσουμε μερικές διαφορετικές φόρμουλες για την τυχαία επιλογή στο Excel χωρίς επανάληψη αριθμών. Επίσης, θα σας δείξουμε μια καθολική γεννήτρια τυχαίων αριθμών που μπορεί να παράγει μια λίστα τυχαίων αριθμών, ημερομηνιών και συμβολοσειρών χωρίς επαναλήψεις.

Όπως πιθανώς γνωρίζετε, το Microsoft Excel διαθέτει διάφορες συναρτήσεις για τη δημιουργία τυχαίων αριθμών, όπως οι RAND, RANDBETWEEN και RANDARRAY. Ωστόσο, δεν υπάρχει καμία εγγύηση ότι το αποτέλεσμα οποιασδήποτε συνάρτησης θα είναι ελεύθερο αντιγράφων.

Αυτό το σεμινάριο εξηγεί μερικούς τύπους για τη δημιουργία μιας λίστας μοναδικών τυχαίων αριθμών. Παρακαλούμε προσέξτε ότι ορισμένοι τύποι λειτουργούν μόνο στην τελευταία έκδοση του Excel 365 και 2021, ενώ άλλοι μπορούν να χρησιμοποιηθούν σε οποιαδήποτε έκδοση του Excel 2019, του Excel 2016, του Excel 2013 και παλαιότερες.

    Λήψη μιας λίστας μοναδικών τυχαίων αριθμών με προκαθορισμένο βήμα

    Λειτουργεί μόνο στο Excel 365 και στο Excel 2021 που υποστηρίζουν δυναμικούς πίνακες.

    Εάν έχετε την τελευταία έκδοση του Excel, ο ευκολότερος τρόπος για να λάβετε ένα λίστα μοναδικών τυχαίων αριθμών είναι ο συνδυασμός 3 νέων δυναμικών συναρτήσεων πίνακα: SORTBY, SEQUENCE και RANDARRAY:

    SORTBY(SEQUENCE( n ), RANDARRAY( n ))

    Πού n είναι ο αριθμός των τυχαίων τιμών που θέλετε να λάβετε.

    Για παράδειγμα, για να δημιουργήσετε μια λίστα με 5 τυχαίους αριθμούς, χρησιμοποιήστε 5 για το n :

    =SORTBY(SEQUENCE(5), RANDARRAY(5))

    Εισάγετε τον τύπο στο επάνω κελί, πατήστε το πλήκτρο Enter και τα αποτελέσματα θα διαχυθούν αυτόματα στον καθορισμένο αριθμό κελιών.

    Όπως μπορείτε να δείτε στο παρακάτω στιγμιότυπο οθόνης, αυτός ο τύπος στην πραγματικότητα ταξινομεί αριθμούς από το 1 έως το 5 με τυχαία σειρά Αν χρειάζεστε μια κλασική γεννήτρια τυχαίων αριθμών χωρίς επαναλήψεις, τότε παρακαλούμε δείτε άλλα παραδείγματα που ακολουθούν παρακάτω.

    Στον παραπάνω τύπο, ορίζετε μόνο πόσες γραμμές θα συμπληρωθούν. Όλα τα άλλα ορίσματα παραμένουν στις προεπιλεγμένες τιμές τους, που σημαίνει ότι η λίστα θα ξεκινάει από το 1 και θα αυξάνεται κατά 1. Αν θέλετε διαφορετικό πρώτο αριθμό και αύξηση, τότε ορίστε τις δικές σας τιμές για το 3ο ( έναρξη ) και 4ο ( βήμα ) ορίσματα της συνάρτησης SEQUENCE.

    Για παράδειγμα, για να ξεκινήσετε από το 100 και να αυξήσετε κατά 10, χρησιμοποιήστε αυτόν τον τύπο:

    =SORTBY(SEQUENCE(5, , 100, 10), RANDARRAY(5))

    Πώς λειτουργεί αυτή η φόρμουλα:

    Δουλεύοντας από μέσα προς τα έξω, η φόρμουλα έχει ως εξής:

    • Η συνάρτηση SEQUENCE δημιουργεί έναν πίνακα διαδοχικών αριθμών με βάση την καθορισμένη ή την προεπιλεγμένη τιμή έναρξης και το αυξανόμενο μέγεθος βήματος. Αυτή η ακολουθία πηγαίνει στο array επιχείρημα του SORTBY.
    • Η συνάρτηση RANDARRAY δημιουργεί έναν πίνακα τυχαίων αριθμών του ίδιου μεγέθους με την ακολουθία (5 γραμμές, 1 στήλη στην περίπτωσή μας). Η ελάχιστη και η μέγιστη τιμή δεν έχουν σημασία, οπότε μπορούμε να τις αφήσουμε στις προεπιλογές. Αυτός ο πίνακας πηγαίνει στην εντολή by_array επιχείρημα του SORTBY.
    • Η συνάρτηση SORTBY ταξινομεί τους διαδοχικούς αριθμούς που παράγονται από την SEQUENCE χρησιμοποιώντας έναν πίνακα τυχαίων αριθμών που παράγεται από την RANDARRAY.

    Λάβετε υπόψη ότι αυτός ο απλός τύπος δημιουργεί μια λίστα μη επαναλαμβανόμενων τυχαίων αριθμών με ένα προκαθορισμένο βήμα Για να παρακάμψετε αυτόν τον περιορισμό, χρησιμοποιήστε μια προηγμένη έκδοση του τύπου που περιγράφεται παρακάτω.

    Δημιουργία μιας λίστας τυχαίων αριθμών χωρίς αντίγραφα

    Λειτουργεί μόνο στο Excel 365 και στο Excel 2021 που υποστηρίζουν δυναμικούς πίνακες.

    Για να δημιουργήσετε τυχαίους αριθμούς στο Excel χωρίς αντίγραφα, χρησιμοποιήστε έναν από τους παρακάτω γενικούς τύπους.

    Τυχαίοι ακέραιοι αριθμοί :

    INDEX(UNIQUE(RANDARRAY( n ^2, 1, min , max , TRUE))), SEQUENCE( n ))

    Τυχαία δεκαδικά ψηφία :

    INDEX(UNIQUE(RANDARRAY( n ^2, 1, min , max , FALSE))), SEQUENCE( n ))

    Πού:

    • N είναι ο αριθμός των τιμών που πρέπει να παραχθούν.
    • Min είναι η ελάχιστη τιμή.
    • Max είναι η μέγιστη τιμή.

    Για παράδειγμα, για να δημιουργήσετε μια λίστα με 5 τυχαίοι ακέραιοι αριθμοί από το 1 έως το 100 χωρίς επαναλήψεις, χρησιμοποιήστε αυτόν τον τύπο:

    =INDEX(UNIQUE(RANDARRAY(5^2, 1, 1, 1, 100, TRUE)), SEQUENCE(5))

    Για τη δημιουργία 5 μοναδικών τυχαίων δεκαδικοί αριθμοί , βάλτε FALSE στο τελευταίο όρισμα της RANDARRAY ή παραλείψτε αυτό το όρισμα:

    =INDEX(UNIQUE(RANDARRAY(5^2, 1, 1, 1, 100)), SEQUENCE(5))

    Πώς λειτουργεί αυτή η φόρμουλα:

    Με την πρώτη ματιά ο τύπος μπορεί να φαίνεται λίγο περίπλοκος, αλλά με μια πιο προσεκτική ματιά η λογική του είναι πολύ απλή:

    • Η συνάρτηση RANDARRAY δημιουργεί έναν πίνακα τυχαίων αριθμών με βάση τις ελάχιστες και μέγιστες τιμές που καθορίζετε. Για να καθορίσετε πόσες τιμές θα δημιουργηθούν, αυξάνετε τον επιθυμητό αριθμό μοναδικών στη δύναμη του 2. Επειδή ο πίνακας που προκύπτει μπορεί να έχει κανείς δεν ξέρει πόσες επαναλήψεις, πρέπει να παρέχετε έναν επαρκή πίνακα τιμών για να επιλέξει η UNIQUE. Σε αυτό το παράδειγμα, χρειαζόμαστε μόνο 5 μοναδικέςτυχαίους αριθμούς, αλλά δίνουμε εντολή στο RANDARRAY να παράγει 25 (5^2).
    • Η συνάρτηση UNIQUE αφαιρεί όλα τα αντίγραφα και "τροφοδοτεί" έναν πίνακα χωρίς αντίγραφα στην INDEX.
    • Από τον πίνακα που περνάει η UNIQUE, η συνάρτηση INDEX εξάγει το πρώτο n τιμές όπως καθορίζεται από την SEQUENCE (5 αριθμοί στην περίπτωσή μας). Επειδή οι τιμές είναι ήδη σε τυχαία σειρά, δεν έχει σημασία ποιες από αυτές θα επιβιώσουν.

    Σημείωση. Σε πολύ μεγάλους πίνακες, αυτός ο τύπος μπορεί να είναι λίγο αργός. Για παράδειγμα, για να λάβετε μια λίστα με 1.000 μοναδικούς αριθμούς ως τελικό αποτέλεσμα, το RANDARRAY θα έπρεπε να δημιουργήσει εσωτερικά έναν πίνακα με 1.000.000 τυχαίους αριθμούς (1000^2). Σε τέτοιες περιπτώσεις, αντί να αυξήσετε σε δύναμη, μπορείτε να πολλαπλασιάσετε n κατά, ας πούμε, 10 ή 20. Απλά έχετε υπόψη σας παρακαλώ ότι όσο μικρότερος πίνακας περνάει στη συνάρτηση UNIQUE (μικρός σε σχέση με τον επιθυμητό αριθμό μοναδικών τυχαίων τιμών), τόσο μεγαλύτερη είναι η πιθανότητα να μην γεμίσουν όλα τα κελιά στην περιοχή διαρροής με τα αποτελέσματα.

    Δημιουργήστε μια σειρά μη επαναλαμβανόμενων τυχαίων αριθμών στο Excel

    Λειτουργεί μόνο στο Excel 365 και στο Excel 2021 που υποστηρίζουν δυναμικούς πίνακες.

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

    INDEX(UNIQUE(RANDARRAY( n ^2, 1, min , max )), SEQUENCE( σειρές , στήλες ))

    Πού:

    • n είναι ο αριθμός των κελιών που πρέπει να συμπληρωθούν. Για να αποφύγετε τους χειροκίνητους υπολογισμούς, μπορείτε να τον δώσετε ως (αριθμός γραμμών * αριθμός στηλών). Για παράδειγμα, για να συμπληρώσετε 10 γραμμές και 5 στήλες, χρησιμοποιήστε 50^2 ή (10*5)^2.
    • Σειρές είναι ο αριθμός των γραμμών που πρέπει να συμπληρωθούν.
    • Στήλες είναι ο αριθμός των στηλών που πρέπει να συμπληρωθούν.
    • Min είναι η χαμηλότερη τιμή.
    • Max είναι η υψηλότερη τιμή.

    Όπως ίσως παρατηρήσετε, ο τύπος είναι ουσιαστικά ο ίδιος με το προηγούμενο παράδειγμα. Η μόνη διαφορά είναι η συνάρτηση SEQUENCE, η οποία σε αυτή την περίπτωση ορίζει τόσο τον αριθμό των γραμμών όσο και των στηλών.

    Για παράδειγμα, για να γεμίσετε ένα εύρος 10 γραμμών και 3 στηλών με μοναδικούς τυχαίους αριθμούς από το 1 έως το 100, χρησιμοποιήστε αυτόν τον τύπο:

    =INDEX(UNIQUE(RANDARRAY(30^2, 1, 1, 1, 100)), SEQUENCE(10, 3))

    Και θα παράγει έναν πίνακα τυχαίων δεκαδικών αριθμών χωρίς επαναλαμβανόμενους αριθμούς:

    Αν χρειάζεστε ακέραιους αριθμούς, τότε ορίστε το τελευταίο όρισμα της RANDARRAY σε TRUE:

    =INDEX(UNIQUE(RANDARRAY(30^2, 1, 1, 1, 100, TRUE)), SEQUENCE(10,3))

    Πώς να δημιουργήσετε μοναδικούς τυχαίους αριθμούς στο Excel 2019, 2016 και νωρίτερα

    Καθώς καμία έκδοση εκτός από το Excel 365 και το 2021 δεν υποστηρίζει δυναμικούς πίνακες, καμία από τις παραπάνω λύσεις δεν λειτουργεί σε παλαιότερες εκδόσεις του Excel. Ωστόσο, αυτό δεν σημαίνει ότι δεν υπάρχει καθόλου λύση, απλώς θα πρέπει να εκτελέσετε μερικά ακόμη βήματα:

    1. Δημιουργήστε μια λίστα τυχαίων αριθμών. Με βάση τις ανάγκες σας, χρησιμοποιήστε είτε:
      • Η συνάρτηση RAND για τη δημιουργία τυχαίων δεκαδικών ψηφίων μεταξύ 0 και 1, ή
      • Η συνάρτηση RANDBETWEEN για την παραγωγή τυχαίων ακέραιων αριθμών στο εύρος που καθορίζετε.

      Φροντίστε να δημιουργήσετε περισσότερες τιμές από όσες πραγματικά χρειάζεστε, επειδή ορισμένες θα είναι διπλές και θα τις διαγράψετε αργότερα.

      Για αυτό το παράδειγμα, δημιουργούμε μια λίστα με 10 τυχαίους ακέραιους αριθμούς μεταξύ 1 και 20 χρησιμοποιώντας τον παρακάτω τύπο:

      =RANDBETWEEN(1,20)

      Για να εισαγάγετε τον τύπο σε πολλά κελιά ταυτόχρονα, επιλέξτε όλα τα κελιά (A2:A15 στο παράδειγμά μας), πληκτρολογήστε τον τύπο στη γραμμή τύπων και πατήστε Ctrl + Enter . Ή μπορείτε να εισαγάγετε τον τύπο στο πρώτο κελί ως συνήθως και στη συνέχεια να τον σύρετε προς τα κάτω σε όσα κελιά χρειάζεται.

      Τέλος πάντων, το αποτέλεσμα θα μοιάζει κάπως έτσι:

      Όπως ίσως παρατηρήσετε, έχουμε εισάγει τον τύπο σε 14 κελιά, αν και τελικά χρειαζόμαστε μόνο 10 μοναδικούς τυχαίους αριθμούς.

    2. Αλλαγή τύπων σε τιμές. Καθώς τόσο η RAND όσο και η RANDBETWEEN υπολογίζουν εκ νέου με κάθε αλλαγή στο φύλλο εργασίας, η λίστα των τυχαίων αριθμών σας θα αλλάζει συνεχώς. Για να αποτρέψετε αυτό το φαινόμενο, χρησιμοποιήστε Ειδική επικόλληση> Τιμές για να μετατρέψετε τους τύπους σε τιμές, όπως εξηγείται στην ενότητα Πώς να σταματήσετε τον επανυπολογισμό τυχαίων αριθμών.

      Για να βεβαιωθείτε ότι το κάνατε σωστά, επιλέξτε οποιονδήποτε αριθμό και κοιτάξτε τη γραμμή τύπου. Θα πρέπει τώρα να εμφανίζει μια τιμή, όχι έναν τύπο:

    3. Για να γίνει αυτό, επιλέξτε όλους τους αριθμούς, μεταβείτε στο μενού Δεδομένα tab>, Εργαλεία δεδομένων και κάντε κλικ στο κουμπί Αφαίρεση αντιγράφων . Στο Αφαίρεση αντιγράφων παράθυρο διαλόγου που εμφανίζεται, απλά κάντε κλικ στο κουμπί OK χωρίς να αλλάξετε τίποτα. Για τα λεπτομερή βήματα, ανατρέξτε στην ενότητα Πώς να καταργήσετε αντίγραφα στο Excel.

    Έγινε! Όλα τα αντίγραφα έχουν εξαφανιστεί και μπορείτε τώρα να διαγράψετε τους περιττούς αριθμούς.

    Συμβουλή. Αντί για το ενσωματωμένο εργαλείο του Excel, μπορείτε να χρησιμοποιήσετε το προηγμένο μας Duplicate Remover for Excel.

    Πώς να σταματήσετε την αλλαγή τυχαίων αριθμών

    Όλες οι συναρτήσεις τυχαιοποίησης στο Excel, συμπεριλαμβανομένων των RAND, RANDBETWEEN και RANDARRAY, είναι πτητικές, δηλαδή υπολογίζουν εκ νέου κάθε φορά που αλλάζει το φύλλο εργασίας. Ως αποτέλεσμα, νέες τυχαίες τιμές παράγονται με κάθε αλλαγή. Για να αποτρέψετε την αυτόματη δημιουργία νέων αριθμών, χρησιμοποιήστε τη λειτουργία Ειδική επικόλληση> Τιμές για να αντικαταστήσετε τους τύπους με στατικές τιμές. Ακολουθεί ο τρόπος:

    1. Επιλέξτε όλα τα κελιά με τον τυχαίο τύπο και πατήστε Ctrl + C για να τα αντιγράψετε.
    2. Κάντε δεξί κλικ στην επιλεγμένη περιοχή και κάντε κλικ στο Ειδική επικόλληση >, Τιμές Εναλλακτικά, μπορείτε να πατήσετε Shift + F10 και στη συνέχεια V , που είναι η συντόμευση για αυτή την επιλογή.

    Για τα λεπτομερή βήματα, ανατρέξτε στην ενότητα Πώς να αλλάξετε τους τύπους σε τιμές στο Excel.

    Γεννήτρια τυχαίων αριθμών για το Excel χωρίς επαναλήψεις

    Οι χρήστες της Ultimate Suite μας δεν χρειάζονται πραγματικά καμία από τις παραπάνω λύσεις, επειδή έχουν ήδη μια καθολική γεννήτρια τυχαίων αριθμών στο Excel τους. Αυτό το εργαλείο μπορεί εύκολα να παράγει μια λίστα μη επαναλαμβανόμενων ακεραίων αριθμών, δεκαδικών αριθμών, ημερομηνιών και μοναδικών κωδικών πρόσβασης. Δείτε πώς:

    1. Στο Εργαλεία Ablebits κάντε κλικ στην καρτέλα Τυχαία επιλογή >, Τυχαία γεννήτρια .
    2. Επιλέξτε την περιοχή που θα γεμίσετε με τυχαίους αριθμούς.
    3. Στο Τυχαία γεννήτρια παράθυρο, κάντε τα εξής:
      • Επιλέξτε τον επιθυμητό τύπο τιμής: ακέραιος, πραγματικός αριθμός, ημερομηνία, Boolean, προσαρμοσμένη λίστα ή συμβολοσειρά (ιδανική για τη δημιουργία ισχυρών και μοναδικών κωδικών πρόσβασης!).
      • Ρυθμίστε το Από το και Προς αξίες.
      • Επιλέξτε το Μοναδικές τιμές πλαίσιο ελέγχου.
      • Κάντε κλικ στο Δημιουργία .

    Αυτό είναι! Η επιλεγμένη περιοχή γεμίζει με μη επαναλαμβανόμενους τυχαίους αριθμούς αμέσως:

    Αν είστε περίεργοι να δοκιμάσετε αυτό το εργαλείο και να εξερευνήσετε άλλα συναρπαστικά χαρακτηριστικά που περιλαμβάνονται στην Ultimate Suite, μπορείτε να κατεβάσετε μια δοκιμαστική έκδοση.

    Αυτός είναι ο τρόπος για να τυχαιοποιήσετε αριθμούς στο Excel χωρίς διπλά.Σας ευχαριστώ για την ανάγνωση και ελπίζω να σας δω στο blog μας την επόμενη εβδομάδα!

    Βιβλίο ασκήσεων για κατέβασμα

    Δημιουργία μοναδικών τυχαίων αριθμών στο Excel (.xlsx αρχείο)

    Ο Michael Brown είναι ένας αφοσιωμένος λάτρης της τεχνολογίας με πάθος για την απλοποίηση πολύπλοκων διαδικασιών χρησιμοποιώντας εργαλεία λογισμικού. Με περισσότερο από μια δεκαετία εμπειρίας στον κλάδο της τεχνολογίας, έχει βελτιώσει τις δεξιότητές του στο Microsoft Excel και το Outlook, καθώς και στα Φύλλα Google και στα Έγγραφα. Το blog του Michael είναι αφιερωμένο στο να μοιράζεται τη γνώση και την τεχνογνωσία του με άλλους, παρέχοντας εύκολες συμβουλές και σεμινάρια για τη βελτίωση της παραγωγικότητας και της αποτελεσματικότητας. Είτε είστε έμπειρος επαγγελματίας είτε αρχάριος, το ιστολόγιο του Michael προσφέρει πολύτιμες πληροφορίες και πρακτικές συμβουλές για να αξιοποιήσετε στο έπακρο αυτά τα βασικά εργαλεία λογισμικού.