formateur informatique

Extraire les données en fonction d'une position trouvée

Accueil  >  Bureautique  >  Excel  >  Excel Avancé  >  Extraire les données en fonction d'une position trouvée
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 :


Trouver un élément sur la position cherchée

L'objectif ici est d'exploiter la méthode Python take pour extraire toutes les informations d'un nom cherché dans un tableau Excel.

Classeur Excel à télécharger
Nous suggérons de baser l'étude sur un classeur Excel existant. Tableau Excel des positions à trouver par formule Python

Nous travaillons à partir d'un tableau de personnes recensées entre les colonnes B et H. Ce tableau est encapsulé dans un DataFrame Python en cellule E4 : tab=xl("B8:H45", headers=True). Grâce à une liste déroulante en cellule G5, nous pouvons spécifier le nom d'une personne à trouver dans ce tableau. Ce critère est embarqué dans un objet Python en cellule J9 : cr=xl("G5").

Position de l'élément cherché
Nous allons bâtir une syntaxe Python qui va marcher sur les traces de l'emploi conjoint des fonctions Excel Index et Equiv. Nous devons d'abord trouver la position de l'élément cherché dans sa colonne. Et grâce à cette position, nous devons ensuite extraire toutes les informations de la ligne associée.
  • Cliquer sur la cellule J12 pour la sélectionner,
  • Réaliser le raccourci clavier CTRL + ALT + MAJ + P pour activer Python,
  • Débuter la syntaxe comme suit : position =,
position est le nom que nous donnons à l'objet Python devant mémoriser la position trouvée pour l'élément cherché.
  • Inscrire le nom du DataFrame, soit : tab,
  • Taper un point (.) pour appeler la méthode à suivre,
  • Inscrire la méthode de recherche suivie d'un crochet ouvrant, soit : index[,
  • La faire agir sur la colonne des noms : tab['Client_nom'],
  • Puis, inscrire le critère d'égalité suivant : ==cr,
En effet, nous cherchons la position de la personne désignée avec la liste déroulante et embarquée dynamiquement dans l'objet Python cr.
  • Fermer le crochet (]) de la méthode index,
  • Puis, terminer la syntaxe de la formule comme suit : .tolist()[0],
Cette méthode tolist()[0] sert à convertir l'index du DataFrame en une liste, puis à accéder au premier élément de cette liste. Grâce à ce critère (tab['Client_nom'] == cr), il n'en subsiste plus qu'un seul pour renvoyer la position convoitée.
  • Valider la formule par le raccourci clavier CTRL + Entrée,
Trouver la position de l-élément cherché par formule Python dans Excel

Comme vous le constatez, nous obtenons bien la position de la personne cherchée. Et si vous changez de nom avec la liste déroulante, la position de l'élément trouvé s'actualise aussitôt.

Prélever sur la position trouvée
Maintenant, il ne nous reste plus qu'à exploiter la méthode Python take sur cette position trouvée pour retourner toutes les informations sur la personne demandée.
  • Cliquer sur la cellule J15 pour la sélectionner,
  • Réaliser le raccourci clavier CTRL + ALT + MAJ + P pour activer Python,
  • Construire la syntaxe suivante : tab.take([position]),
  • Valider la formule par le raccourci clavier CTRL + Entrée,
Nous obtenons un nouveau DataFrame mais cette fois, nous souhaitons exploiter les données visuellement.
  • A gauche de la barre de formule, cliquer sur la flèche orientée vers le bas,
  • Dans les propositions, choisir Valeur Excel,
Comme vous pouvez l'apprécier, toutes les informations de la personne cherchée sont rapatriées.

Extraire toutes les informations de la ligne cherchée par formule Python dans Excel

Et si vous changez de nom avec la liste déroulante, l'extraction s'ajuste automatiquement et en parfaite cohérence. Les syntaxes que nous avons construites en deux étapes, sont les suivantes :

position = tab.index[tab['Client_nom']==cr].tolist()[0]
tab.take([position])


 
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