KutoolsforOffice — Un'unica soluzione, cinque potenti strumenti.Ottenere di più con meno sforzo.

Mescola un elenco in Excel (tutorial passo-passo semplice)

AutoreAmanda Li Data di modifica

L’ordinamento casuale è un metodo rapido e semplice per garantire che ogni elemento abbia la stessa probabilità di apparire. In questa guida ti mostreremo come mescolare facilmente un elenco in Excel in pochi semplici passaggi.

Uno screenshot che illustra il risultato della randomizzazione in Excel

Video: Mescolare un elenco in Excel


Mescolare un elenco con le funzioni

In questa sezione ti mostrerò come mescolare un elenco sfruttando le funzioni integrate di Excel.

Mescola un elenco con la funzione CASUALE

Gli utenti di qualsiasi versione di Excel possono mescolare casualmente il proprio dataset originale combinando la funzione CASUALE con la funzione Ordina: segui i passaggi indicati di seguito.

Passo 1: Inserisci la formula CASUALE

Seleziona la cella accanto a quella sopra l’elenco che desideri mescolare, inserisci la formula CASUALE indicata di seguito e premi «Invio».

=RAND()

Formula CASUALE in una cella

Passo 2: Estendi la formula CASUALE alle altre celle

Fai doppio clic sul quadratino di riempimento (il piccolo quadrato verde nell’angolo in basso a destra della cella) per estendere automaticamente la formula alle celle sottostanti.

Formula CASUALE applicata ad altre celle

Passo 3: Ordina i risultati CASUALE per mescolare l’elenco

1. Seleziona «B2:B8», l’intervallo contenente la formula CASUALE.

2. Fai clic su «Ordina e filtra» > «Ordina dal più piccolo al più grande» nel gruppo «Modifica» nella scheda «Home».

Opzione Ordina dal più piccolo al più grande sulla barra multifunzione

3. Nella finestra di dialogo visualizzata, seleziona «Espandi la selezione» e clicca su «Ordina».

Selezione dell'opzione 'Espandi selezione'

Risultato

Ora è tutto pronto! L’elenco è stato mescolato, come illustrato di seguito.

L'elenco è stato randomizzato

Nota: la funzione CASUALE di Excelè volatile: ricalcola il risultato ad ogni modifica del foglio di lavoro. Pertanto, i numeri nella colonna B cambiano immediatamente dopo l’ordinamento. Se desideri mescolare nuovamente l’elenco, ripeti il passo3sopra indicato. In alternativa, puoi semplicemente eliminare la colonna contenente la funzione CASUALE.
Mescola un elenco con le funzioni MATR.CASUALE, ORDINA.PER e RIGHE (Excel 365/2021)

Se utilizzi versioni più recenti di Excel, come Excel per Microsoft 365, Excel 2021 o Excel per il Web, le formule RANDARRAY, SORTBY e ROWS ti permettono di ottenere in un attimo un elenco mescolato nella posizione desiderata.

Passo 1: Inserisci la formula con MATR.CASUALE, ORDINA.PER e RIGHE

Seleziona una cella vuota in cui desideri visualizzare il risultato mescolato, digita la formula seguente (ricorda di sostituire «)A2:A8» con l’elenco originale che vuoi mescolare) e premi «Invio».

=SORTBY(A2:A8,RANDARRAY(ROWS(A2:A8)))

Nota:
  • Excel restituisce un errore «#SPILL!» quando l'intervallo di spill (in questo caso B2:B8) non è vuoto.
  • La formula è volatile: ricalcola il risultato ogni volta che modifichi il foglio di lavoro. Per mescolare nuovamente l'elenco, premi "F9".
  • Il risultato della formula (elenco casualizzato) non è modificabile. Per modificare l’elenco casualizzato, procedi con il passaggio successivo.

(Opzionale) Passo 2: Copia e incolla il risultato della formula per renderlo modificabile

Se desideri visualizzare un semplice risultato casuale, puoi saltare questo passaggio. Se invece intendi modificare l’elenco mescolato, copia il risultato della formula e incolla solo i valori:

1. Seleziona il risultato della formula e premi «Ctrl» + «C» per copiarlo.

2. Fai clic con il tasto destro sulla cella in cui desideri incollare il risultato copiato. (Puoi anche incollarlo nella sua posizione originale.)

3. Seleziona l’opzione «Incolla solo valori» dal menu contestuale.

Risultato

Ora otterrai un elenco mescolato e modificabile, come illustrato di seguito.


Mescola un elenco in Excel con Kutools in 2 clic

Se sei stanco di usare formule e preferisci affidarti a un componente aggiuntivo, la funzione Riordina, Seleziona o Mescola di Kutools per Excel ti permette di eseguire un ordinamento casuale in modo molto più semplice e con molte più opzioni. Procedi come segue:

Kutools per Exceloffre oltre 300 funzionalità avanzate per semplificare compiti complessi, aumentando creatività ed efficienza.Integrato con funzionalità basate sull’IA,Kutools automatizza le attività con precisione, rendendo la gestione dei dati semplice e intuitiva.Maggiori informazioni su Kutools per Excel...         Prova gratuita...

Innanzitutto, seleziona l’elenco da mescolare. Poi clicca su «Kutools» > «Intervallo» > «Riordina, Seleziona o Mescola». Nella finestra di dialogo «Riordina, Seleziona o Mescola», scegli «Riga intera» e clicca su «OK».

Seleziona l'opzione Intere righe nella finestra di dialogo per mescolare l'elenco

Nota:

Mescolare un elenco con VBA

Se preferisci mescolare un elenco utilizzando il metodo VBA, procedi nel seguente modo.

Nota: non è possibile annullare l’operazione dopo aver eseguito una macro VBA. Pertanto, crea una copia dell’elenco altrove nel caso ti servissero i dati originali in futuro.

Passo 1: Seleziona l’elenco da mescolare

L'elenco da mescolare è selezionato

Passo 2: Copia il codice VBA nella finestra Modulo

1. Premi «Ctrl» + «F11» per aprire l’editor VBA, quindi clicca su «Inserisci» > «Modulo» e accedi subito alla finestra del codice del modulo.

Fai clic su Inserisci > Modulo nell'editor VBA

2. Copia e incolla il seguente codice VBA nella finestra del modulo aperta.

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

Passo 3: Esegui il codice VBA

Nella finestra del codice, premi «F5» o fai clic sul pulsante Pulsante Esegui per eseguire il codice.

Il pulsante Esegui nella finestra del codice

Risultato

L'elenco è stato mescolato

Nota: se desideri mescolare nuovamente l’elenco, ripeti il passo3sopra indicato.