IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Voir le flux RSS

Pierre Fauconnier

Excel 365: Extraire le nom du fichier de son chemin complet par formule

Noter ce billet
par , 09/02/2021 à 08h00 (676 Affichages)
Salut.

Dans un précédent billet, je vous parlais d'une formule "Palindrome" construite avec JOINDRE.TEXTE pour retourner une chaine de caractères. Je vous la rends ici: =JOINDRE.TEXTE("";VRAI;STXT(B1;NBCAR(B1)-LIGNE(INDIRECT("a1:a" & NBCAR(B1)))+1;1)).

En fin de billet, je vous ai un peu laissé sur votre fin puisque la question était: Mais à quoi ça sert? C'est vrai que tester qu'un mot peut se lire de gauche à droite ou de droite à gauche est le cadet de nos soucis, au quotidien.

Examinons maintenant le problème suivant: Comment passer de A à B par formule?

Nom : 2021-02-06_115859.png
Affichages : 76
Taille : 74,7 Ko


Avant XL365, il fallait "un peu" chipoter et la réponse est tout sauf intuitive => j'en parlerai dans un prochain billet. Avec Excel 365, c'est un peu plus facile.

Raisonnons un peu:
Pour extraire le nom du fichier qui se trouve à la droite de la chaine, on doit prendre les x derniers caractères. Ainsi, pour le premier fichier, on pourrait utiliser =DROITE([@[Nom complet]];13), mais on comprend assez vite que, sauf à n'avoir que des noms de fichiers de 13 caractères, ça ne va que moyennement convenir...

Nom : 2021-02-06_120016.png
Affichages : 63
Taille : 82,2 Ko

Le pivot, ici, est bien sûr le dernier \ dont il faut trouver la position. On dispose bien des fonctions CHERCHE() et TROUVE(), mais elles renvoient la position de la première occurrence de la sous-chaine cherchée. Ca ne nous aide pas trop puisque l'on ne sait pas combien il y en a et que les noms des dossiers composant le chemin n'ont pas tous des longueurs identiques...

ET SI ON RETOURNAIT LA CHAINE?? => Les derniers seront les premiers => notre dernier \ deviendra le premier et on pourra en trouver sa position P grâce à TROUVE(), permettant de savoir que le nom du fichier compte P-1 caractères. Et donc P-1, c'est le nombre de caractères que l'on devra extraire du chemin complet: =DROITE(Chemin; P-1)... EUREKA, on a la logique de travail. Et comme dit plus haut, on peut retourner la chaine avec la formule exposée plus haut:
=DROITE([@[Nom complet]];TROUVE("\";JOINDRE.TEXTE("";VRAI;STXT([@[Nom complet]];NBCAR([@[Nom complet]])-LIGNE(INDIRECT("a1:a" & NBCAR([@[Nom complet]])))+1;1)))-1)

Nom : 2021-02-06_121316.png
Affichages : 64
Taille : 83,6 Ko

Excel 365 a vraiment apporté des améliorations très intéressantes, notamment au travers de nouvelles fonctions et des plages dynamiques.


Et si on n'a pas Excel 365 et JOINDRE.TEXTE, on est condamné à devoir passer par une fonction perso en VBA? Mais noooonnnn, je vous montrerai comment réaliser cela dans un prochain billet...

Envoyer le billet « Excel 365: Extraire le nom du fichier de son chemin complet par formule » dans le blog Viadeo Envoyer le billet « Excel 365: Extraire le nom du fichier de son chemin complet par formule » dans le blog Twitter Envoyer le billet « Excel 365: Extraire le nom du fichier de son chemin complet par formule » dans le blog Google Envoyer le billet « Excel 365: Extraire le nom du fichier de son chemin complet par formule » dans le blog Facebook Envoyer le billet « Excel 365: Extraire le nom du fichier de son chemin complet par formule » dans le blog Digg Envoyer le billet « Excel 365: Extraire le nom du fichier de son chemin complet par formule » dans le blog Delicious Envoyer le billet « Excel 365: Extraire le nom du fichier de son chemin complet par formule » dans le blog MySpace Envoyer le billet « Excel 365: Extraire le nom du fichier de son chemin complet par formule » dans le blog Yahoo

Commentaires