Bonsoir,
En voyant ta demande, je me suis souvenu avoir eu fait quelques fonctions de tirage aléatoire et en fouillant j'en ai une qui devrait pouvoir t'intéresser. On lui fournit en argument le nombre d'éléments sur lesquels se fait le tirage, et pour le nombre d'éléments à tirer on sélectionne autant de cellules (en ligne ou colonne), on valide matriciellement et les tirés s'affichent (sans doublon bien sûr).
Dans ton cas pour l'utiliser on inclut cette fonction en argument d'une fonction INDEX. Donc pratiquement :
- on sélectionne B2:B9
- on tape la formule : =INDEX('Liste présents'!A2:A9;TIRAGESELEC(8))
- on valide matriciellement (Ctrl+Maj+Entrée)
et les 8 noms apparaissent dans un ordre aléatoire.
En principe la fonction ne se recalcule pas à chaque recalcul. On peut la faire se recalculer par Ctrl+Alt+F9, mais il faut avoir pris soin de sélectionner la plage avant, sinon le recalcul n'affichera que le premier tiré sur les 8 cellules.
Il est donc préférable de la faire réinsérer par VBA : bouton actualisation, la macro réinsère la formule dans la plage en formule matricielle, ce qui est plus confortable.
Cordialement
Ferrand