VBA Excel: extraction de morceaux de chaînes dans un tableau
Résoluvia55 Messages postés 14501 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 28 novembre 2024 - 18 avril 2024 à 12:02
- VBA Excel: extraction de morceaux de chaînes dans un tableau
- Liste déroulante excel - Guide
- Si et excel - Guide
- Aller à la ligne excel - Guide
- Word et excel gratuit - Guide
- Excel compter cellule couleur sans vba - Guide
3 réponses
17 avril 2024 à 20:43
Re,
Voir si cela convient
https://www.cjoint.com/c/NDrsRxkEwJQ
17 avril 2024 à 18:34
Bonjour
1) Pas sûr qu'il y ait besoin de VBA
2) Pas très clair, fournis un exemple de fichiers avec plusieurs lignes à traiter en le postant sur cjoint.com, en faisant créer un lien et en revenant le coller cie
Dans l'attente
Cdlmnt
Modifié le 17 avril 2024 à 19:49
Merci pour ta réponse
Je souhaite le faire en VBA car c'est pour insérer dans un autre code
Pour l'instant, je teste un cas unique , et je l'étendrais aux autres lignes. Voici quelques exemple de chaînes à traiter :
"Agences : Provence Cote Azur : 2 - 3 - 5 - 8 - 12 - 17 "
"Agences : Grand Nord : 12 -15"
"Agences : Auvergn Rhône Alp : 5 - 10"
"Agences : Occitanie : 13 -17 - 19"
Tu choisis n'importe laquelle ...
18 avril 2024 à 12:02
Re
Target c'est la cible donc la cellule de l'action (ici un double-clic)
Selection c'est la cellule qui a été sélectionnée auparavant (avec une instruction comme Range("B2"). Select par exemple
Worksheetfunction.Find c'est l'application de la fonction Find (l'équivalent en VBA de CHERCHE)
Oui, SPLIT est une fonction très pratique pour décomposer une chaîne selon ses séparateurs quel qu'ils soient, virgule, tiret, espace, slash etc
Bonne continuation
18 avril 2024 à 09:47
Merci pour ta réponse!
J'ai bien téléchargé le fichier , et ça fonctionne parfaitement.
Je vais l'adapter à mon code existant. Cependant, quelques interrogations:
1) quelle est la différence entre Target.value et Selection.value ?
2) idem entre WorksheetFunction.Find et Selection.Find ?
3) je ne connaissait pas la fonction Split(chaine) : c'est ce qui me manquait pour aboutir ... (l'experience , tout est là !)
Merci encore pour ton aide, cordialement, Mikel