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

sup mot répéter

  • Initiateur de la discussion Initiateur de la discussion maval
  • Date de début Date de début

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 !

maval

XLDnaute Barbatruc
Bonjour

J'ai un code pour supprimer mot class="st11" mon problème et que je veut changer tous les mots qui ont
Class="01", Class="12", Class="13", ect....

Mon code:
Code:
Sub SupprimerMot()
Dim Cel As Range, Plage As Range
Dim Mot As String
    Set Plage = Range("i5:i200") ' à adapter à la plage à parcourir.
    Mot = "class=""st12" 'adapter au mot à rechercher et à supprimer
    'Pas nécessaire si le plage est petite
    Application.ScreenUpdating = False
    For Each Cel In Plage
        If Cel Like "*" & Mot & "*" Then
            Cel = Replace(Cel, Mot, "")
            'Pour enlever le double espace qui en résulte..
            Cel = Replace(Cel, "  ", " ")
        End If
    Next Cel
    Application.ScreenUpdating = True
End Sub

Je vous remercie

Max
 
Hello
Suffit d'adapter un peu ton code... depuis le temps.. tu devrais savoir quand meme.. non?
et toujours pas de fichier exemple...

VB:
Sub SupprimerMot()
Dim Cel As Range, Plage As Range
Dim listeMot(1 To 4, 1 To 1) As Variant 'on définit le tablo de 4 liges
'Dim listeMot() As Variant 'on laisse la taille NON définie si on va chercher la liste dans une feuille
Application.ScreenUpdating = False
'définir la liste des Mots à supprimer
'ou par lecture d'une zone spécifique dans le fichier?
listeMot(1, 1) = "class=""st12"
listeMot(2, 1) = "class=""st13"
listeMot(3, 1) = "class=""st14"
listeMot(4, 1) = "class=""st01"
''si on va chercher dans une feuille : ex feuille 2 dans la colonne A
'With Sheets("Feuil2")
'    fin = .Range("A" & .Rows.Count).End(xlUp).Row
'    listeMot = .Range("A1:A" & fin).Value
'End With
Set Plage = Range("i5:i200") ' à adapter à la plage à parcourir.
For i = LBound(listeMot, 1) To UBound(listeMot, 1) 'pour chaque mot de la liste
   
    Mot = listeMot(i, 1) 'adapter au mot à rechercher et à supprimer
   
    For Each Cel In Plage
        If Cel Like "*" & Mot & "*" Then
            Cel = Replace(Cel, Mot, "")
            'Pour enlever le double espace qui en résulte..
            Cel = Replace(Cel, "  ", " ")
        End If
    Next Cel
Next i
    Application.ScreenUpdating = True
End Sub
 
- 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
481
  • Question Question
Microsoft 365 modifier un code
Réponses
1
Affichages
519
Réponses
3
Affichages
897
Réponses
7
Affichages
400
  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
1 K
Réponses
15
Affichages
588
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…