VBA fornisce una funzione per restituire un valore casuale. Non useresti necessariamente questa funzione da sola, ma come parte di una macro più grande che potrebbe richiedere l’uso di valori casuali. La sintassi per la funzione è la seguente:

x = Rnd()

dove x è il risultato. Il valore restituito sarà sempre compreso tra 0 e 1. Per tradurre questo in un altro valore casuale, tutto ciò che devi fare è moltiplicare il risultato per il numero più alto che vuoi considerare. Ad esempio, se volessi un numero intero casuale compreso tra 1 e 25, potresti usare la seguente riga di codice:

x = Int(25 * Rnd()) + 1

Poiché Rnd restituisce sempre un valore compreso tra 0 e 1 (ma mai 1 stesso), moltiplicando ciò che restituisce per 25 e quindi utilizzando la funzione Int su quel risultato restituirà un numero compreso tra 0 e 24. Infine, 1 viene aggiunto a questo risultato, in modo che x sarà uguale a un numero compreso tra 1 e 25 inclusi.

Se si desidera un numero in virgola mobile casuale, la semplice rimozione della funzione Int da questo codice non funzionerà correttamente. Invece, dovrai modificare la formula in questo modo:

x = (Rnd() * 24) + 1

_Nota: _

Se desideri sapere come utilizzare le macro descritte in questa pagina (o in qualsiasi altra pagina dei siti ExcelTips), ho preparato una pagina speciale che include informazioni utili.

ExcelTips è la tua fonte di formazione economica su Microsoft Excel.

Questo suggerimento (9751) si applica a Microsoft Excel 2007, 2010, 2013, 2016, 2019 ed Excel in Office 365. Puoi trovare una versione di questo suggerimento per l’interfaccia del menu precedente di Excel qui: