Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Microsoft 365 Enlever du texte entre parenthèse

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

JulesetVince31

XLDnaute Nouveau
Bjr à toutes et tous,

Suis nouveau...

Je souhaiterai enlever une partie du texte entre les parenthèses.
Exemple.
Automatisation des plan de tri TG
ENROUX (CHEMIN D ENROUX)
ENROUX (IMPASSE D ENROUX)

Ici, je souhaite enlever d enroux, et garder chemin et impasse entre parenthèses ainsi que Enroux dans la cellule.

Merci pour vos retours.
Cdlt
 
Bonjour Loïc, et bienvenu sur XLD,
Avec un petit fichier test et quelques autres exemples, cela aurait été plus simple.
Si en A1 il y a ENROUX (CHEMIN D ENROUX) , alors ENROUX (CHEMIN) peut être obtenu avec :
VB:
=STXT(A1;1;CHERCHE(" ";STXT(A1;CHERCHE("(";A1);100))+CHERCHE("(";A1)-2)&")"
 

Pièces jointes

Bonjour,

Sinon avec une fonction :
VB:
Function FormatageCellule(ByVal Chaine As String) As String

Dim LaChaine As String

    FormatageCellule = ""
    If InStr(1, Chaine, "(", vbTextCompare) = 0 Then Exit Function
    LaChaine = Split(Chaine, "(")(1)
    FormatageCellule = Split(Chaine, "(")(0) & " (" & Split(LaChaine, " ")(0) & ")"

End Function

 

Pièces jointes


Bjr,
je joins le fichier. Merci pour l'aide.
En fait, c'est pour arrêter les redondances et juste garder les termes indicateurs des voies.
Merci pour l'aide.
 

Pièces jointes

Re, bonsoir Eric,
Un essai en PJ avec :
VB:
Sub Nettoie()
    Dim DL%, DC%, i%, j%, T, T1, T2
    Application.ScreenUpdating = False
    DL = Cells(Cells.Rows.Count, "A").End(xlUp).Row
    DC = Cells(1, Columns.Count).End(xlToLeft).Column
    T = Range(Cells(1, 1), Cells(DL, DC))
    For i = 1 To UBound(T)
        For j = 1 To UBound(T, 2)
            If T(i, j) Like "*(*" Then
                T1 = Split(T(i, j), "(")
                T2 = Split(T1(1), " ")
                T(i, j) = T1(0) & "(" & T2(0) & ")"
            End If
        Next j
    Next i
    [A1].Resize(UBound(T, 1), UBound(T, 2)) = T
End Sub
Sur la feuille, faire ALT+F8 et lancer "Nettoie"
 

Pièces jointes

Je ne peux pas utiliser car Windows "Une macro potentiellement dangereuse a été bloquée"... zut​

 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
4
Affichages
3 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…