Pour partager cette vidéo sur les réseaux sociaux ou sur un site, voici son url :
Sujets que vous pourriez aussi aimer :Isoler des données depuis des chaînes
Grâce à la
fonction Excel Fractionner.Texte, nous savons déjà ranger les informations issues de
données délimitées par un
caractère remarquable, dans différentes cellules. Par imbrication avec une autre fonction, nous allons voir comment choisir les
données délimitées à importer.

Sur l'exemple illustré par la capture, nous travaillons à partir d'informations de clients rangées dans une première colonne sur la gauche de la feuille. Ces données comme la civilité et le nom ou encore le prénom, sont séparées les unes des autres par des espaces, car elles sont réunies dans une seule et même cellule. Et pourtant sur la droite, grâce à deux listes déroulantes en entêtes, l'utilisateur peut choisir les données précises qu'il souhaite isoler et ce, pour chacun des clients donc pour toutes les lignes. Et nous allons le voir, malgré la complexité apparente, c'est une formule très simple qui réalise le tour de force.
Classeur Excel à télécharger
Nous suggérons de baser l'étude sur un
classeur Excel offrant ces
informations à découper au choix.
Nous trouvons bien la liste des personnes, avec leurs informations détaillées, en
colonne B. Sur la droite, une grille d'extraction vide pour l'instant, est en attente des données dynamiques à extraire à partir de ces listes délimitées. Elle est placée entre les colonnes D et E. En entêtes, l'utilisateur peut actionner deux listes déroulantes pour choisir les informations à importer depuis ces chaînes.

Il peut s'agir de la civilité, du nom ou du prénom ou encore du code postal ou de la ville. Ces listes déroulantes se nourrissent des informations placées en
colonne L, Ã partir de la
cellule L1.

Elles sont accompagnées d'informations numériques repérant les emplacements respectifs de ces données dans les
listes délimitées. Au choix dans l'une ou l'autre liste déroulante, ces valeurs numériques sont extraites sur la droite de la feuille, en
cellules respectives G4 et H4, selon la syntaxe suivante pour la première :
=RECHERCHEV(D3;L1:M5;2;FAUX).
Ce sont ces valeurs dynamiques que nous devons exploiter dans la syntaxe de la formule à bâtir pour définir les informations à extraire à partir des
listes délimitées.
Choisir l'emplacement de l'extraction
La
fonction Excel Fractionner.Texte sépare les données délimitées dans différentes colonnes dans la mémoire de l'ordinateur. Ici, le délimiteur est tout simplement l'espace. Avant restitution sur la feuille, nous devons donc l'imbriquer dans la
fonction Excel ChoisirCols pour choisir la colonne ou l'emplacement délimité à partir duquel il s'agit d'isoler l'information, selon le choix de l'utilisateur avec l'une ou l'autre liste déroulante, considérant donc la valeur numérique dynamique associée.
- Sélectionner la première case de la grille d'extraction en cliquant sur la cellule D4,
- Taper le symbole égal (=) pour démarrer la construction de la formule,
- Inscrire la fonction de choix de colonnes, suivie d'une parenthèse, soit : ChoisirCols(,
- Lui imbriquer la fonction de découpe, soit : Fractionner.Texte(,
- Désigner le premier texte à tronçonner en cliquant sur sa cellule B4,
- Taper un point-virgule (;) pour passer dans l'argument du délimiteur,
- Inscrire un espace entre guillemets, soit : " ",
- Fermer la parenthèse de la fonction Fractionner.Texte,
De fait, nous sommes de retour dans les bornes de la
fonction ChoisirCols. Les arguments qui suivent concernent les
numéros des colonnes à extraire, ici à partir du
tableau formé par la
fonction Fractionner.Texte. Ce sont deux informations qui nous intéressent. Elles dépendent des choix utilisateurs avec les listes déroulantes. Et comme vous le savez, ces choix sont transcrits en
positions dans les
cellules G4 et
H4. Ce sont elles que nous devons utiliser pour cibler les bonnes colonnes.
- Taper un point-virgule (;) pour passer dans l'argument du premier numéro de colonne,
- Désigner la cellule G4 puis la figer avec la touche F4 du clavier, ce qui donne : $G$4,
En effet, nous allons répliquer cette logique sur les lignes du dessous. Chaque ligne devra faire référence à cette position, dont les coordonnées ne doivent pas suivre le chemin de la réplication.
- Taper un point-virgule (;) pour passer dans l'argument du deuxième numéro de colonne,
- Désigner la cellule H4 puis la figer avec la touche F4 du clavier, ce qui donne : $H$4,
- Fermer la parenthèse de la fonction ChoisirCols,
- Enfin, valider la formule par le raccourci clavier CTRL + Entrée,
De cette manière, nous gardons active la cellule du résultat pour l'exploiter dans l'enchaînement. A l'origine, les entêtes de la grille d'extraction désignent d'abord la ville et ensuite le code postal. Il s'agit donc d'un ordre inversé par rapport à l'agencement que proposent ces chaînes. Et comme vous pouvez l'apprécier, pour la première personne, c'est bien la ville qui est extraite devant le code postal, depuis des chaînes de textes, rappelons-le.
- Cliquer et glisser la poignée de la cellule D4 vers le bas jusqu'en D11,
Comme vous le constatez, grâce à cet emploi judicieux de la
fonction Fractionner.Texte dans la
fonction ChoisirCols, pour chaque personne, nous obtenons bien les deux informations sélectives demandées. Voilà donc une méthode intéressante lorsqu'il s'agit d'isoler des données précises à partir de chaînes longues et nombreuses.

Et désormais, si vous changez les entêtes avec les listes déroulantes, c'est dynamiquement que vous importez les informations choisies et ce, pour toutes les lignes de la grille d'extraction.