IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Suppression de texte entre parenthèses [XL-2003]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de FCL31
    Profil pro
    Inscrit en
    Août 2007
    Messages
    887
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 887
    Par défaut Suppression de texte entre parenthèses



    Dans une colonne d'une feuille, j'ai des données mais certaines finissent par du texte entre parenthèse
    ex : DUPONT (Truc)

    Je voudrais savoir si il y moyen de supprimer "(Truc)"

    Sachant que se n'est pas forcement le mot "Truc"

  2. #2
    Membre Expert Avatar de aalex_38
    Inscrit en
    Septembre 2007
    Messages
    1 631
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 631
    Par défaut
    Regarde du côté de la fonction VBA "INSTR"

  3. #3
    Expert confirmé Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 756
    Par défaut
    Re

    Un bout de code qui fonctionne sur la cellule B2
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    Dim intDeb As Integer
    Dim IntFin As Integer
     
    intDeb = InStr(1, Range("B2").Value, "(")
    IntFin = InStr(1, Range("B2").Value, ")")
     
    Range("B2").Value = Trim(Replace(Range("B2").Value, Mid(Range("B2").Value, intDeb, IntFin - intDeb + 1), ""))

  4. #4
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    En reprenant l'exemple de JF
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    If instr(Range("B2").Value ,"(")<> 0 then _
        Range("B2").Value = trim(Split(Range("B2").Value, "(")(0))
    En mettant ça, tu testes la cellule pour vérifier qu'une parenthèse est bien présente. Si oui, tu crées un tableau ou la parenthèse est le séparateur et tu prends le premier indice (0) du tableau.
    Trim retire l'éventuel espace placé à droite (et à gauche) du texte restant.
    Bonne soirée

    EditTu peux aussi utiliser Find (---> F1) pour ne rechercher que les cellules contenant une parenthèse. Le meilleur exemple est dans l'aide en ligne

  5. #5
    Expert confirmé Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 756
    Par défaut
    Un code plus simple qui supprime tout ce qui se trouve a droite du premier caractère "(" trouvé

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Dim StrA As String
     
    StrA = Range("B2").Value
     
    Range("B2").Value = Trim(Left(StrA, InStr(1, StrA, "(") - 1))
    NB : le précédent code supprime tout ce qui se trouve entre parenthèses (parenthèses incluses)
    Ex : Bidulle (truc) machin => Bidulle machin

  6. #6
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Citation Envoyé par jfontaine
    NB : le précédent code supprime tout ce qui se trouve entre parenthèses (parenthèses incluses)
    Ex : Bidulle (truc) machin => Bidulle machin
    Citation Envoyé par FCL31
    certaines finissent par du texte entre parenthèse
    plus simple

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Copier/coller texte entre parenthèses à la fin du document
    Par emulamateur dans le forum VBA Word
    Réponses: 1
    Dernier message: 01/04/2013, 22h55
  2. [REGEX] Texte entre parenthèse
    Par Amuny dans le forum VB.NET
    Réponses: 3
    Dernier message: 18/04/2011, 14h45
  3. Réponses: 2
    Dernier message: 25/06/2008, 23h19
  4. Réponses: 1
    Dernier message: 27/10/2007, 22h18
  5. Réponses: 9
    Dernier message: 10/03/2007, 10h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo