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

Petit pb avec boucle en VBA

  • Initiateur de la discussion Initiateur de la discussion NYghost
  • 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 !

N

NYghost

Guest
Bonjour tout le monde,

Voila le but de ma petite macro (ma 1ere 🙂) est de coloré toutes les lignes qui contiennent un mot précis, voila le début :

Sub obsolete()
On Error Resume Next

Set MotTrouvé = Cells.Find(What:="obsolete")

If Not MotTrouvé Is Nothing Then
MotTrouvé.Select
ActiveCell.EntireRow.Select
With Selection.Interior
.ColorIndex = 3
.Pattern = xlSolid
End With
Else
MsgBox "Rien trouvé"
Exit Sub
End If
End Sub


Le problème est qu'évidement, la 1ere ligne rencontrée est bien colorée mais cela s'arrete la.. Vu que j'ai quand même un bon paquet de ligne 😉 !

J'ai essayer avec des for, next,.. Mais je n'arrive pas trop, je cherche donc un exemple sur lequel je pourrais me baser.

Toute aide est la bienvenue,

Merci d'avance 🙂
 
Re : Petit pb avec boucle en VBA

Salut NYghost ,

pour pouvoir te répondre il serait nécessaire que tu donnes plus de détails concernant la cellule ou se trouve le mot recherché
Si tu pouvais éventuellement joindre un petit bout de fichier
 
Re : Petit pb avec boucle en VBA

Bonjour,
Essaies comme ceci
Code:
Sub obsolete()
Trouve = False
For Each Cel In ActiveSheet.UsedRange
    If Cel = "Obsolète" Then
        Cel.EntireRow.Interior.ColorIndex = 3
        Trouve = True
    End If
Next
    If Trouve = False Then MsgBox "Rien trouvé"

End Sub
A+
kjin
 
Re : Petit pb avec boucle en VBA

Et bien et bien, quelle rapiditée 🙂 !

Voici un bout de fichier, a savoir que c'est pour tester donc pas de vrai données..

Si tu as d'autres questions
 

Pièces jointes

Re : Petit pb avec boucle en VBA

Bonjour,

toujours pense à utiliser l'aide (PF1)

Find, méthode - Exemple

Cet exemple montre comment rechercher toutes les cellules de la plage A1:A500 de la première feuille de calcul qui contiennent la valeur 2, puis grise ces cellules.

With Worksheets(1).Range("a1:a500")
Set c = .Find(2, lookin:=xlValues)
If Not c Is Nothing Then
firstAddress = c.Address
Do
c.Interior.Pattern = xlPatternGray50
Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address <> firstAddress
End If
End With

GIBI
 
Re : Petit pb avec boucle en VBA

Salut à tous,

@kjin, ta macro fonctionne si le mot recherché se trouve seul dans une cellule
par contre si le mot se trouve dans un texte (un groupe de mot ou phrase) ça ne fonctionne pas

à+
 
Re : Petit pb avec boucle en VBA

Re,
C'est exact Phlaurent, mais le manque de précision n'est pas de mon fait
Avec le fichier joint
Code:
Sub Obsolete()
Trouve = False
For Each Cel In ActiveSheet.UsedRange
    If UCase(Cel) = "OBSOLETE" Then
        Range("A" & Cel.Row & ":P" & Cel.Row).Interior.ColorIndex = 3
        Trouve = True
    End If
Next
    If Trouve = False Then MsgBox "Rien trouvé"
End Sub
A+
kjin
 
Re : Petit pb avec boucle en VBA

Servi sur un plateau d'argent.. Merci à tous !!

Encore une petite question, quand je fais un

Sheet1.select et que j'ai plusieurs "Pan" (dans windows, freeze pan), il n'y a qu'un des pan qui est selectionner, normal? Existe-t-il une astuce opur ca ?
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

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