Vai al contenuto principale

Generatore di numeri casuali in Excel: 3 metodi diversi

Esistono diversi modi per generare numeri casuali in Excel, come le funzioni `RAND(),` `RANDBETWEEN(),` e `RANDARRAY()`.
· 6 min leggi

Scopri con l'IA

I numeri casuali vengono usati in Excel per ogni tipo di attività, come simulazioni e test d’ipotesi. In questo articolo ti mostrerò i diversi modi per generarli. Partiremo dalle basi come RAND() e RANDBETWEEN(), per poi passare a opzioni più avanzate come RANDARRAY(). Alla fine, saprai esattamente come usare ognuna di queste funzioni e come scegliere tra di esse.

Panoramica delle funzioni di numeri casuali in Excel

Excel può generare numeri casuali come decimali singoli, interi all’interno di un intervallo o persino intere tabelle di valori. Vediamo tre modi diversi per farlo:

Funzione RAND()

La funzione RAND() restituisce un decimale casuale compreso tra 0 e 1. È una funzione importante, motivo per cui l’abbiamo inclusa nel nostro elenco di 15 formule di Excel di base che tutti devono conoscere.

Per generare numeri decimali casuali tra 0 e 1, inserisci semplicemente =RAND() in una delle celle. Se vuoi più numeri casuali, trascina per applicare questa formula ad altre righe.

Generare numeri casuali usando la funzione RAND in Excel.

Genera numeri casuali con la funzione RAND(). Immagine dell’autore.


Puoi anche usare la funzione RAND() per generare diversi tipi di numeri, ad esempio:

  • Numeri casuali entro un intervallo specifico: usa questa formula: RAND() * N. Qui, N può essere qualsiasi valore. 

  • Numero casuale tra due numeri qualsiasi: usa questa formula: RAND() * (b - a) + a. Qui b è il valore più alto e a è il più basso. Il risultato sarà sempre inferiore al valore b.

  • Numeri casuali che siano interi invece di decimali: usa le formule sopra e poi racchiudile nella funzione INT().

=RAND()*100
=RAND()*(20-10)+10
=INT(RAND()*(20-10)+10)

Generare numeri interi casuali con la funzione RAND() in Excel.

Genera numeri interi con la funzione RAND(). Immagine dell’autore.

Nota: potresti notare che questi numeri si aggiornano ogni volta che inserisco nuovi valori nel foglio. Assicurati di usare Incolla speciale > Valori se vuoi bloccare i numeri in posizione (ne parliamo meglio più avanti).

Funzione RANDBETWEEN()

RANDBETWEEN() genera numeri interi casuali tra l’intervallo specificato. La sua sintassi è:

=RANDBETWEEN(bottom, top)

bottom è il valore più basso e top è il più alto.

Per esempio, supponiamo di voler generare interi tra 10 e 20. Posso usare la seguente formula:

=RANDBETWEEN(10,20)

Generare numeri casuali usando RANDBETWEEN() in Excel

Genera numeri casuali con RANDBETWEEN(). Immagine dell’autore.

Nota come potresti ottenere lo stesso risultato con =INT(RAND()*(20-10)+10). Ma preferisco RANDBETWEEN() perché è una versione più semplice e avanzata della funzione RAND() pensata per questo tipo di lavoro. Con RAND(), devo scrivere una formula lunga per ottenere un intero casuale tra due valori. Con RANDBETWEEN(), posso farlo in un solo passaggio.

Funzione RANDARRAY()

RANDARRAY() è stata introdotta in Excel 365. Restituisce una matrice di numeri casuali e ci permette di specificare il numero di valori, righe e colonne da riempire - il tutto senza trascinare la formula - e possiamo scegliere se restituire decimali o numeri interi.

=RANDARRAY([rows],[columns],[min],[max],[whole_number])

Qui:

  • rows si riferisce al numero di righe che vogliamo popolare.

  • columns si riferisce al numero di colonne che vogliamo popolare.

  • min specifica il numero più basso.

  • max specifica il numero più alto.

  • whole_number accetta TRUE per i numeri interi e FALSE (o lascia vuoto) per i decimali.

Vediamo come funziona nella pratica. Supponiamo di voler generare numeri decimali casuali su 4 colonne e 6 righe tra 10 e 20. In questo caso, la mia formula sarà:

=RANDARRAY(6,4,10,20)

Per i numeri interi, la formula sarà:

=RANDARRAY(6,4,10,20,TRUE)

In questo modo, ogni volta che aggiorno il foglio di calcolo vengono generati nuovi numeri.

Generare numeri casuali usando la funzione RANDARRAY() in Excel.

Genera numeri casuali con la funzione RANDARRAY(). Immagine dell’autore.

Un rapido confronto tra tutte le funzioni 

Ecco un rapido confronto tra le tre funzioni:

CaratteristicaRAND()RANDBETWEEN()RANDARRAY()
Tipo di outputDecimaleInteri tra un intervallo specificatoDecimale o intero
Opzione intervallo disponibileNoSìSì
Restituisce valori multipliNoNoSì
Versioni disponibiliTutte le versioni (Excel 365 - 2000)Excel 365 - 2007Excel 365 - 2021

Utilizzi specifici del generatore di numeri casuali di Excel 

Vediamo alcuni esempi pratici di come e dove possiamo usare i generatori di numeri casuali.

Generare numeri casuali unici

A volte vogliamo generare numeri casuali che non si ripetano. Anche se Excel non ha una funzione diretta per questo, possiamo combinare due funzioni:

  1. RAND() con RANK.EQ()

  2. RANDARRAY() con UNIQUE() 

Mettiamo che mi servano 10 numeri casuali unici. Per prima cosa applico RAND() nella cella A2 per generare numeri casuali e li trascino fino a A10. Poi, nella cella B2, dato che voglio che questi numeri siano unici, inserisco la seguente formula:

=RANK.EQ(A2,$A$2:$A$10)

Generare numeri casuali unici usando RANK.EQ e RAND in Excel.

Genera numeri casuali unici con RANK.EQ(). Immagine dell’autore.

Un altro modo è racchiudere la funzione RANDARRAY() dentro la funzione UNIQUE(). Qui genero 10 numeri casuali unici tra 1 e 20 con questa formula:

=UNIQUE(RANDARRAY(10,1,1,20,TRUE))

Generare numeri casuali con UNIQUE e RANDARRAY in Excel. 

Genera numeri casuali con UNIQUE() e RANDARRAY(). Immagine dell’autore.

Nota: Sia UNIQUE() che RANDARRAY() funzionano solo in Excel 365 e 2021. Segui il nostro percorso Excel Fundamentals per restare aggiornato.

Generare numeri con distribuzioni specifiche

Excel offre anche un modo per generare numeri casuali seguendo una distribuzione specifica, come una distribuzione normale, utile ad esempio in una simulazione Monte Carlo. Per questo puoi usare NORM.INV().

=NORM.INV(probability, mean, standard deviation)

Qui: 

  • probability è un decimale casuale tra 0 e 1 (RAND()).

  • mean è il valore medio attorno a cui dovrebbero concentrarsi i numeri.

  • standard deviation indica quanto i numeri oscillano verso l’alto e il basso rispetto alla media.

Per esempio, voglio creare punteggi di test casuali per una classe di studenti e impostare il punteggio medio a 75. La maggior parte degli studenti varia di 10 punti (cioè i punteggi vanno da 65 a 85). Quindi ho applicato la seguente formula a tutte le righe:

=NORM.INV(RAND(), 75, 10)

Generare distribuzione normale usando la funzione NORM.INV in Excel.

Genera una distribuzione normale usando la funzione NORM.INV(). Immagine dell’autore.

Anonimizzare e testare i dati

Possiamo anche usare numeri casuali per sostituire dati sensibili (come numeri di conto o numeri di telefono) a fini di test o per la privacy dei dati.

Qui ho un elenco di numeri di conto e voglio anonimizzare le prime quattro cifre dei numeri di conto, quindi le sostituisco con numeri casuali generici usando questa formula:

=REPLACE(A2,1,4,RANDBETWEEN(1,4))

Nascondere/anonimizzare i dati sensibili con numeri casuali con la funzione RANDBETWEEN in Excel.

Nascondi i dati sensibili con numeri casuali. Immagine dell’autore.

Prendere decisioni migliori

Può sembrare sorprendente, ma possiamo persino usare i numeri casuali per prendere decisioni rapide. Per esempio, se voglio scegliere casualmente un vincitore da un lungo elenco, posso estrarre un nome casuale dall’intervallo indicato.

Qui sotto ho un elenco di nomi nelle celle A2 fino a A10 per un giveaway e voglio selezionare un vincitore. Per farlo, inserisco la seguente formula nella cella C2 e viene scelto casualmente un vincitore:

=INDEX(A2:A10, RANDBETWEEN(1, 11))

Scegli un nome a caso da un elenco usando la funzione RANDBETWEEN in Excel.

Scegli un vincitore casuale. Immagine dell’autore.

Come evitare il ricalcolo dei numeri casuali

Un problema dei numeri casuali è che cambiano ogni volta che il foglio si aggiorna. Se vuoi mantenerli fissi, convertili in valori statici. Ci sono due modi per farlo:

  • Seleziona l’intervallo dei numeri casuali, premi Ctrl + C per copiarli, poi fai clic con il tasto destro e scegli Incolla speciale > Valori.
  • Per fermare il ricalcolo dei numeri in una cella, fai clic sulla cella e, nella barra della formula, premi F9.

Capire gli algoritmi dei numeri casuali in Excel

Se ti incuriosisce cosa succede sotto il cofano delle funzioni di numeri casuali di Excel, ne parlo brevemente.

A partire da Excel 2010, Microsoft Excel utilizza l’algoritmo Mersenne Twister per generare numeri casuali. Produce numeri casuali di alta qualità che superano molti test statistici. Una delle sue versioni più usate è MT19937, basata su un tipo speciale di numero primo chiamato primo di Mersenne.

Prima del Mersenne Twister, si usava il metodo del quadrato centrale. Eleva al quadrato un numero e considera le cifre centrali come numero casuale. Sebbene fosse un’idea ingegnosa per l’epoca, sviluppata dal genio John von Neumann, si è scoperto che produceva schemi e poteva persino bloccarsi ripetendo gli stessi numeri. Per questo è stato sostituito dal Mersenne Twister.

Considerazioni finali 

Abbiamo visto diversi modi per generare numeri casuali in Excel, dai semplici decimali con RAND() ai numeri interi con RANDBETWEEN() fino a intere tabelle di valori casuali con RANDARRAY().

Se vuoi imparare di più sulla gestione dei dati in Excel, dai un’occhiata ai nostri corsi Data Preparation in Excel e Data Visualization in Excel. Inoltre, clicca qui sotto per il nostro percorso Excel Fundamentals: non è richiesta alcuna esperienza precedente.

Laiba Siddiqui

Autore

Laiba Siddiqui

Sono una content strategist: mi piace semplificare argomenti complessi. Ho aiutato aziende come Splunk, Hackernoon e Tiiny Host a creare contenuti coinvolgenti e informativi per il loro pubblico.

Argomenti

Correlato