formateur informatique

Tirer une personne au sort avec la fonction RechercheX

Accueil  >  Bureautique  >  Excel  >  Excel Avancé  >  Tirer une personne au sort avec la fonction RechercheX
Livres à télécharger


Pour partager cette vidéo sur les réseaux sociaux ou sur un site, voici son url :


Inscription Newsletter    Abonner à Youtube    Vidéos astuces Instagram
Sujets que vous pourriez aussi aimer :


Choisir au hasard dans un tableau

Grâce à la fonction Excel RechercheX couplée à la fonction Alea.Entre.Bornes, nous allons voir avec quelle simplicité il est possible de tirer une personne au sort.

Tirer une personne au sort dans un tableau Excel par formule

Sur l'exemple illustré par la capture, à chaque fois que l'utilisateur clique sur le bouton intitulé Nouveau tirage, une personne est choisie au hasard. Toutes ses informations sont aussitôt importées dans la ligne bleue, au-dessus du tableau.

Classeur Excel à télécharger
Nous suggérons d'appuyer l'étude sur ce tableau des personnes. Si vous déployez la zone Nom en haut à gauche de la feuille Excel, vous remarquez que la colonne des identifiants est reconnue sous le nom id tandis que le tableau tout entier est identifié par la plage nommée tab.
  • Réaliser maintenant le raccourci clavier ALT + F11 pour basculer dans l'éditeur VBA Excel,
Comme vous pouvez le voir, une toute petite procédure de code VBA existe.

Private Sub tirerAuSort_Click()
Application.Calculate
End Sub


Elle est associée au bouton placé en haut de la feuille. Grâce à la méthode Calculate de l'objet Application, chaque clic sur ce bouton ordonnera le recalcul de toutes les formules. Donc, quand nous aurons bâti notre formule d'extraction, chaque clic procèdera à un nouveau tirage au sort.

Chercher une ligne au hasard
Vous l'avez sans doute remarqué, la colonne des identifiants (id) représente aussi les numéros de ligne du tableau. C'est donc en produisant un nombre aléatoire compris entre la première et la dernière de ces lignes que nous allons pouvoir demander à la fonction RechercheX, de réaliser cette extraction au hasard.
  • Fermer l'éditeur VBA Excel pour revenir sur la feuille,
  • Cliquer sur la cellule B4 pour désigner le point de départ de l'extraction,
  • Taper le symbole égal (=) pour démarrer la construction de la formule,
  • Inscrire la fonction matricielle d'extraction, suivie d'une parenthèse, soit : RechercheX(,
C'est tout de suite, dans son premier argument, en guise de valeur cherchée, que nous devons lui spécifier un numéro aléatoire.
  • Inscrire la fonction de génération aléatoire, suivie d'une parenthèse, soit : Alea.Entre.Bornes(,
  • Taper le chiffre 1 pour désigner la borne inférieure de la génération aléatoire,
C'est ainsi que nous considérons la première ligne du tableau. Nous devons toutes les considérer, pour que le tirage au sort soit totalement impartial. Comme vous le savez, c'est la fonction Excel Lignes qui renseigne sur le nombre de lignes contenues dans une plage qui lui est passée en paramètre.
  • Taper un point-virgule (;) pour passer dans l'argument de la borne supérieure,
  • Inscrire la fonction de décompte suivie d'une parenthèse, soit : Lignes(,
  • Désigner le tableau tout entier par son nom, soit : tab,
  • Fermer la parenthèse de la fonction Lignes,
  • Puis, fermer la parenthèse de la fonction Alea.Entre.Bornes,
Cette recherche du numéro aléatoire, nous devons l'exercer dans la première colonne du tableau, celle des identifiants.
  • Taper un point-virgule (;) pour passer dans l'argument du tableau de recherche,
  • Désigner la colonne des identifiants par son nom, soit : id,
Tirer au sort la ligne complète
Grâce aux facultés matricielles de la fonction RechercheX, comme nous l'avons démontré à l'occasion de précédents travaux, nous pouvons extraire toutes les informations de la ligne choisie au hasard. Pour cela, nous devons désigner l'intégralité des données en guise de tableau de retour.
  • Taper un point-virgule (;) pour passer dans l'argument du tableau renvoyé,
  • Puis, désigner toutes les données par le nom du tableau, soit : tab,
  • Fermer la parenthèse de la fonction RechercheX,
  • Enfin, valider la formule matricielle par la touche Entrée du clavier,
Comme vous pouvez l'apprécier, une ligne est en effet choisie au hasard et complètement rapatriée.

Choisir une ligne au hasard par formule Excel

De plus et grâce au petit code VBA, chaque clic sur le bouton déclenche à nouveau la fonction RechercheX pour produire une nouvelle extraction aléatoire.

 
Sur Facebook
Sur Youtube
Les livres
Contact
Mentions légales



Abonnement à la chaîne Youtube
Partager la formation
Partager sur Facebook
Partager sur Twitter
Partager sur LinkedIn