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 :

Supprimer un mot dans une cellule [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 : 45
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 887
    Par défaut Supprimer un mot dans une cellule


    Dans un fichier Excel, j'ai des cellules avec un mot que je voudrais supprimer :

    Dans la colonnes B, j'ai des renseignements dans les cellules mais c'est renseignements ne correspondent pas forcement à ce que je veu
    dans certaines cellules, je voudrais supprimer un mot qui est recurant dans plusieurs cellules de la colonne.

    Dans plusieurs cellules, j'ai le mot "Presses" que je voudrais supprimer

    Par exemple, la cellule qui contien le texte "12 Presses mp" devienne "12 mp"

    Merci de votre aide

  2. #2
    Membre Expert Avatar de Krovax
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 888
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 888
    Par défaut
    Bonjour,
    utilise find pour trouver le mot en question (je te laisse lire l'aide excel, vu les infos je ne peux pas faire mieu que son exemple)

    puis
    au lieu de c.Value = 5
    tu met
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    c= replace(c, "ton mot", "")
    Pour la déclaration des variable c est un range

    E

  3. #3
    Membre éclairé Avatar de FCL31
    Profil pro
    Inscrit en
    Août 2007
    Messages
    887
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 887
    Par défaut
    Merci

    Mais je ne comprend pas vraiment le code proposé (je suis pas trtés fort) mais on dirrai que le code proposé, cherche les cellules qui on pour valeur "2" et les remplce par "5"

    Je suis pas certain que sa corresponde vraiment à se que je cherche

  4. #4
    Membre Expert Avatar de Krovax
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 888
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 888
    Par défaut
    Oui c'est ca tu remplca 2 par ton mot et tu lit la suite de mon poste pour ne pas remplacer par un 5

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    With Worksheets(1).Range("a1:a500") 'ici tu met ton oglet et la plage dans laquelle tu fait la recherche
        Set c = .Find('ton mot", lookin:=xlValues)
        If Not c Is Nothing Then
            firstAddress = c.Address
            Do
                c= replace(c, "ton mot", "")
                Set c = .FindNext(c)
            Loop While Not c Is Nothing And c.Address <> firstAddress
        End If
    End With

  5. #5
    Membre éclairé Avatar de FCL31
    Profil pro
    Inscrit en
    Août 2007
    Messages
    887
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 887
    Par défaut
    Je pense avoir trouvé une solution avec le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Sub Test()
    Dim i As Long
     Application.ScreenUpdating = False
     For i = 1 To Range("b65535").End(xlUp).Row
     Cells(i, 2) = Replace(Cells(i, 2), "PRESSE ", "")
     Cells(i, 2) = Replace(Cells(i, 2), "presse ", "")
     Next i
    End Sub
    Sa a l'air de marcher mais je voudrais avoir votre avis si c'est bien une solution qui ne devrai pas me poser de probléme

  6. #6
    Membre Expert Avatar de Krovax
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 888
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 888
    Par défaut
    C devrais fonctinner mais disont que ca sera bien plus lent a toi de voir. Par contre j'aimerais bien savoir ce que tu reproche au code précédent...

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

Discussions similaires

  1. Supprimer un mot dans une cellule sur plusieurs onglet
    Par mia64 dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 25/06/2015, 16h47
  2. [vba excel] chercher un mot dans une cellule
    Par MrYoYo dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 05/02/2009, 18h38
  3. [RegEx] supprimer des mots dans une phrase
    Par anarchoi dans le forum Langage
    Réponses: 6
    Dernier message: 10/05/2007, 10h44
  4. comment en VBA mettre les mots dans une cellule en oblique
    Par antoine.dandois dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 12/02/2007, 18h10
  5. [TSQL] calculer le nombre de mot dans une cellule
    Par ricachu dans le forum MS SQL Server
    Réponses: 8
    Dernier message: 31/07/2006, 12h12

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