Remplacer différentes parties d'une chaîne

Résolu/Fermé
Signaler
Messages postés
4
Date d'inscription
jeudi 13 octobre 2016
Statut
Membre
Dernière intervention
7 novembre 2016
-
Messages postés
34228
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
3 décembre 2021
-
Bonjour,
Dans un classeur Excel, j'ai des chaînes dans cellules et dans ces chaînes, je dois remplacer certaines parties entre [ ] par une autre chaîne en fonction de ce qu'il y a entre les [ ]. Je sais, ce n'est pas très clair.

Par exemple dans un fichier, la feuille "Données" sert à structurer la feuille "Finale". Pour la ligne "pourcentage", j'ai la chaîne "[Montant] / [Total]"dans la colonne formule. Ca donne :
Libellé Formule
Identifiant
Montant
Total
Pourcentage [Montant] / [Pourcentage]

Et je dois remplacer [Montant], et [Total] par la ligne où se trouve Montant et Total pour pouvoir transformer cette chaîne en un formule exploitable dans la feuille "Finale" pour que le calcul soit effectué automatiquement. On obtient :
Identifiant Montant Total Pourcentage
ID_1 50 1000 0.05 avec B2/C2 comme formule
ID_2 80 2000 0.04
ID_3 100 3000 0.033333333


Est-ce que quelqu'un a une idée. Je ne vois vraiment pas comment faire.

Merci de votre aide

1 réponse

Messages postés
34228
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
3 décembre 2021
3 859
Bonjour,
Tu dois pouvoir utiliser les expressions régulières pour extraire les texte entre crochets, puis la méthode FIND pour les remplacer par les coordonnées voulues.

REGEX (expressions régulières) : https://www.commentcamarche.net/faq/41005-vba-initiation-aux-expressions-rationnelles

Méthode FIND : https://www.commentcamarche.net/faq/36886-methode-find-dans-vba-recherche-de-donnees-sous-excel