OVH Cloud OVH Cloud

nombre aléatoire

3 réponses
Avatar
Fred
Bonjour

Je souhaite générer un nombre aléatoire dans une macro vb (enfin, je crois
que c'est comme celà que çà s'appelle)

j'arrive à le faire dans la feuille avec ALEA() mais pas dans la macro

Merci de bien vouloir m'éclairer de vos lumières

Frédéric

3 réponses

Avatar
AV
| Je souhaite générer un nombre aléatoire dans une macro vb (enfin, je crois
| que c'est comme celà que çà s'appelle)

Tirage d'un nombre aléatoire (entre 1 et 100) dans la cellule active :

Sub zzz()
ActiveCell = [int(rand()*(101-1)+1)]
End Sub

AV
Avatar
Francois MAURICE
bonjour,
une petite question au passage,

pourquoi ecrire int(rand()*(101-1)+1) et non pas int((rand()*100)+1)] ?
"AV" a écrit dans le message de news:
%
| Je souhaite générer un nombre aléatoire dans une macro vb (enfin, je
crois
| que c'est comme celà que çà s'appelle)

Tirage d'un nombre aléatoire (entre 1 et 100) dans la cellule active :

Sub zzz()
ActiveCell = [int(rand()*(101-1)+1)]
End Sub

AV




Avatar
AV
| bonjour,
| une petite question au passage,
| pourquoi ecrire int(rand()*(101-1)+1) et non pas int((rand()*100)+1)] ?

C'est simplement pour mieux comprendre le principe du tirage entre bornes
(celles-ci incluses)

=int(rand()*(Borne supérieure +1 - Borne inférieure)+Borne Inférieure)
Ce qui, pour un tirage entre 5 et 10, donne :
=int(rand()*(11-5)+5)
Ce qui, évidemment, équivaut à :
=int((rand()*6)+5)
Mais est-ce que la simplification éclaire le "débat" ?
Pas si sur mais .c'est comme on veut..

AV