OVH Cloud OVH Cloud

Choix de cellule aléatoire

3 réponses
Avatar
Zendik
Bonjour,

Dans un classeur, j'ai une feuille "pageB" dans laquelle j'ai 10 textes
différents dans les cellules A1 à A10.

Je voudrais qu'à chaque fois que j'ouvre Excel, dans une cellule précise
(disons B15) de mon autre feuille "pageA" apparaisse aléatoirement l'un des
10 textes précités.

J'ai cherché à créer une formule, sans succés :
- j'arrive à générer un nombre aléatoire (ALEA()), mais n'arrive pas à
en obtenir un allant de 1 à 10,
- je n'arrive pas à faire, dans une cellule, une référence dynamique vers
une autre cellule en utilisant le nombre aléatoire précédemment obtenu comme
numéro de ligne.

Merci de m'aider.

Cordialement.

Zendik

3 réponses

Avatar
Pierre Fauconnier
Bonjour

En B15 de PageA, recopie la formule suivante:
=INDEX(PageB!A1:A10;ENT(ALEA()*10)+1)

En adaptatn le nom de la feuille, ici PageB...
A chaque ouverture du classeur, tu auras un nom différent.
Ok?


--
Pierre Fauconnier ()
"Le bonheur n'est pas au bout du chemin. Le bonheur EST le chemin ( proverbe
zen )
Remplacez nospam.nospam par pfi.be pour répondre. Merci



"Zendik" a écrit dans le message de news:
44910c5e$0$994$
Bonjour,

Dans un classeur, j'ai une feuille "pageB" dans laquelle j'ai 10 textes
différents dans les cellules A1 à A10.

Je voudrais qu'à chaque fois que j'ouvre Excel, dans une cellule précise
(disons B15) de mon autre feuille "pageA" apparaisse aléatoirement l'un
des
10 textes précités.

J'ai cherché à créer une formule, sans succés :
- j'arrive à générer un nombre aléatoire (ALEA()), mais n'arrive pas à
en obtenir un allant de 1 à 10,
- je n'arrive pas à faire, dans une cellule, une référence dynamique vers
une autre cellule en utilisant le nombre aléatoire précédemment obtenu
comme
numéro de ligne.

Merci de m'aider.

Cordialement.

Zendik





Avatar
stéphane
Bonjour,

=ALEA.ENTRE.BORNES(1;10) pour générer un nb entre 1 et 10 dans cellule B1 de
PageB par exemple.


=INDEX(PageB!A1:A10;PageB!B1;1) dans cellule B15 de PageA .


Stéphane


"Zendik" a écrit dans le message de news:
44910c5e$0$994$
Bonjour,

Dans un classeur, j'ai une feuille "pageB" dans laquelle j'ai 10 textes
différents dans les cellules A1 à A10.

Je voudrais qu'à chaque fois que j'ouvre Excel, dans une cellule précise
(disons B15) de mon autre feuille "pageA" apparaisse aléatoirement l'un
des
10 textes précités.

J'ai cherché à créer une formule, sans succés :
- j'arrive à générer un nombre aléatoire (ALEA()), mais n'arrive pas à
en obtenir un allant de 1 à 10,
- je n'arrive pas à faire, dans une cellule, une référence dynamique vers
une autre cellule en utilisant le nombre aléatoire précédemment obtenu
comme
numéro de ligne.

Merci de m'aider.

Cordialement.

Zendik





Avatar
AV
Dans le module de ThisWorkbbook

Private Sub Workbook_Open()
[PageA!B15] = Application.Index([PageB!A1:A10], [int(rand()*10)+1])
End Sub

AV