L'esecuzione di un ordinamento casuale è un modo rapido e semplice per garantire che tutti i casi vengano visualizzati con la stessa probabilità. In questo tutorial parleremo di come randomizzare facilmente o mescolare un elenco in Excel in pochi passaggi.
In questa sezione, ti insegnerò come mescolare un elenco con le funzioni integrate di Excel.
Gli utenti di qualsiasi versione di Excel possono ordinare in modo casuale il set di dati originale utilizzando il file RAND funzione con l'aiuto di Riordina caratteristica, si prega di seguire i passaggi seguenti.
Passaggio 1: inserisci la formula RAND
Seleziona la cella accanto alla cella superiore dell'elenco che randomizzerai, inserisci la formula RAND sottostante e premi Entra.
=RAND()
Passaggio 2: riempire la formula RAND in altre celle
Fare doppio clic sulla maniglia di riempimento (il quadratino verde nell'angolo in basso a destra) della cella della formula per applicare la formula alle celle sottostanti.
Passaggio 3: ordina i risultati RAND per mescolare l'elenco
1. Selezionare B2: B8, l'elenco che contiene la formula RAND.
2. Fare clic su Ordina e filtra > Ordina dal più piccolo al più grande nel Editing gruppo sul Casa scheda.
3. Nel popup Ordina avviso finestra di dialogo, selezionare Espandi la selezionee quindi fare clic su Riordina.
Risultato
Ora sei a posto! L'elenco è randomizzato come mostrato di seguito.
Se si è utenti di versioni di Excel più recenti, ad esempio Excel per Microsoft 365 o Excel 2021 o Excel per il Web, il CASUALE, ORDINA PER e RIGHE la formula ti aiuterà a ottenere rapidamente un elenco mescolato nella posizione specificata.
Passaggio 1: inserisci la formula RANDARRAY, SORTBY e ROWS
Seleziona una cella vuota in cui desideri ottenere il risultato randomizzato, digita la formula seguente (nota che dovresti cambiare A2: A8 nella formula sottostante all'elenco originale che si desidera randomizzare) e premere Entra.
=SORTBY(A2:A8,RANDARRAY(ROWS(A2:A8)))
(Facoltativo) Passaggio 2: copia e incolla il risultato della formula per renderlo modificabile
Se vuoi solo vedere un risultato casuale, puoi farlo salta questo passaggio. Se desideri modificare l'elenco riordinato in modo casuale, devi copiare il risultato della formula e incollare solo i valori:
1. Selezionare il risultato della formula e premere Ctrl + C per copiarlo.
2. Fai clic con il pulsante destro del mouse su una cella in cui incollerai il risultato copiato. (Puoi anche incollare il valore nella sua posizione originale.)
3. Seleziona il Incolla solo valori opzione dal menu di scelta rapida.
Risultato
Ora otterrai un elenco mescolato e modificabile come mostrato di seguito.
Se sei stanco di utilizzare formule e intendi utilizzare l'aiuto di un componente aggiuntivo, Kutools for Excel'S Ordina / Seleziona intervallo in modo casuale La funzione può aiutarti a eseguire un ordinamento casuale molto più facilmente con più opzioni. Per favore così come segue:
Per prima cosa, seleziona l'elenco che mescolerai. E poi seleziona Kutools > Autonomia > Ordina / Seleziona intervallo in modo casuale. Nel pop-up Ordina / Seleziona intervallo in modo casuale finestra di dialogo, selezionare Intere righee quindi fare clic su Ok.
Se preferisci randomizzare un elenco con il metodo VBA, procedi come segue.
Passaggio 1: seleziona l'elenco che mescolerai
Passaggio 2: copia il codice VBA nella finestra del modulo
1. Stampa Ctrl + F11 per aprire l'editor VBA, quindi fare clic su inserire > Modulo per aprire una finestra Codice modulo.
2. Copia e incolla il codice VBA di seguito nella finestra del modulo aperta.
Codice VBA: ordinamento casuale di un elenco
Sub RandomSort()
'Update by ExtendOffice
Dim xRg As Range
Dim xNum, xF, xI As Integer
Dim xWSh, xAWSh As Worksheet
On Error Resume Next
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Set xAWSh = Application.ActiveSheet
Set xRg = ActiveWindow.RangeSelection
Set xWSh = Worksheets.Add
xNum = xRg.Count
For xF = xNum To 1 Step -1
xI = WorksheetFunction.RandBetween(1, xF)
xWSh.Range("A1").Value = xRg.Item(xI)
xRg.Item(xI) = xRg.Item(xF)
xRg.Item(xF) = xWSh.Range("A1")
Next
xWSh.Delete
Application.ScreenUpdating = True
Application.DisplayAlerts = True
End Sub
Passaggio 3: eseguire il codice VBA
Nella finestra del codice, premere F5 o clicca il pulsante per eseguire questo codice.
Risultato