Encadrer le mot après un caractère spécifique macro VBA
baarar97
Messages postés
4
Statut
Membre
-
baarar97 Messages postés 4 Statut Membre -
baarar97 Messages postés 4 Statut Membre -
Bonjour,
bonjour
Dans un fichier excel une cellule contient un texte, je voudrais encadrer un mot qui vient après un caractère. Ce caractère est bien défini.
est ce que je peux le faire à l'aide d'une macro
Exemple:
Julien va à l'école à pied
Julien va (école) (pied)
Dans mon exemple mon caractère défini est "à" donc le caractère qui vient après école et pied je dois les encadrer par des parenthèses.
j'ai cherché beaucoup sur des forum mais j'ai pas trouvé une réponse
Merci d'avance
bonjour
Dans un fichier excel une cellule contient un texte, je voudrais encadrer un mot qui vient après un caractère. Ce caractère est bien défini.
est ce que je peux le faire à l'aide d'une macro
Exemple:
Julien va à l'école à pied
Julien va (école) (pied)
Dans mon exemple mon caractère défini est "à" donc le caractère qui vient après école et pied je dois les encadrer par des parenthèses.
j'ai cherché beaucoup sur des forum mais j'ai pas trouvé une réponse
Merci d'avance
A voir également:
- Encadrer le mot après un caractère spécifique macro VBA
- Caractère ascii - Guide
- Caractère spéciaux - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Caractere speciaux - Guide
- Trousseau mot de passe iphone - Guide
1 réponse
Bonjour,
un essai avec le fonction Split
https://silkyroad.developpez.com/VBA/ManipulerChainesCaracteres/#LI-I
Le texte se trouve en colonne A ( a adapter)
Le résultat en colonne B(a adapter)
Faire Alt F11 pour accéder à l'éditeur, coller ce code dans le module de la feuille. Il se déclenchera a chaque changement de sélection
Avec une formule c'est peut-être plus performant. Car la macro ne s'adapte qu'a ce cas de figure!
un essai avec le fonction Split
https://silkyroad.developpez.com/VBA/ManipulerChainesCaracteres/#LI-I
Le texte se trouve en colonne A ( a adapter)
Le résultat en colonne B(a adapter)
Faire Alt F11 pour accéder à l'éditeur, coller ce code dans le module de la feuille. Il se déclenchera a chaque changement de sélection
Option Explicit
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim ligne As Long
If Not Application.Intersect(Target, Range("A:A")) Is Nothing Then
ligne = Target.Row
Range("B" & ligne).Value = Split(Range("A" & ligne).Value, "à")(0) & "("
Range("B" & ligne).Value = Range("B" & ligne).Value & Split(Range("A" & ligne).Value, "à")(1) & ") "
Range("B" & ligne).Value = Range("B" & ligne).Value & "("
Range("B" & ligne).Value = Range("B" & ligne).Value & Split(Range("A" & ligne).Value, "à")(2) & ")"
End If
End Sub
Avec une formule c'est peut-être plus performant. Car la macro ne s'adapte qu'a ce cas de figure!
Merci beaucoup.
Car la macro ne s'adapte qu'a ce cas de figure!
Peut-être un spécialiste des Formules!