Couleur plage de cellules selon extrait de texte

Résolu/Fermé
Evedll Messages postés 74 Date d'inscription vendredi 6 juillet 2007 Statut Membre Dernière intervention 26 septembre 2023 - Modifié le 25 oct. 2018 à 09:42
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 - 25 oct. 2018 à 14:18
Bonjour,

J'essaie de réutiliser une macro mais je crois que j'ai raté quelque chose.

Dans la colonne C de mon tableau, j'ai parfois le terme "...Annulé le ....".
J'ai besoin de mettre en couleur la plage de données de la ligne correspondant au terme "Annulé" trouvé dans la colonne C.

Exemple : s'il trouve le mot Annulé en C10, il applique couleur de fond à la plage (A10:J10). Il faut répéter cette action jusqu'à toutes les valeurs trouvées de la colonne C soient trouvées.
En effectuant des recherches, j'ai constaté qu'il fallait mettre xlPart et non xlWhole dans FIND (pour une partie de texte et non l'intégralité)
La macro d'origine fonctionnait pour une autre action (merci à vous d'ailleurs) mais je n'ai pas réussi à l'adapter pour autre chose. Je pensais avoir trouvé...
Merci à qui voudra bien m'aider

Si joint le fichier :
https://we.tl/t-rvPFnTiv1W

Option Explicit

Sub Cherche_Couleur()
  Dim Trouve As Range, PlageDeRecherche As Range, Plage As Range
  Dim Valeur_Cherchee As String
  
  Valeur_Cherchee = "Annulé"
  Set PlageDeRecherche = ActiveSheet.Columns(3)
  Set Trouve = PlageDeRecherche.Cells.Find(what:=Valeur_Cherchee, LookAt:=xlPart)

  If Not Trouve Is Nothing Then
    On Error GoTo Fin 'si aucune cellule vide évite l'erreur 1004 : pas de cellules correspondantes
    Set Plage = Range("C1:C" & Trouve.Row).SpecialCells(xlCellTypeBlanks)
    Plage.Select.Interior.ThemeColor = xlThemeColorAccent2
    Plage.Select.Interior.TintAndShade = 0.799981688894314

  Else
    MsgBox "Pas trouvé " & Valeur_Cherchee
  End If
  
Fin:

End Sub





4 réponses

f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701
Modifié le 25 oct. 2018 à 07:52
Bonjour,

une autre façon de faire: https://www.cjoint.com/c/HJzfHR0jUkf

Sur que vous voulez la plage de cellules 2 a la dernière trouvée avec Annulé??

Erratum:

Probleme fichier modifie avec excel2011 MAC, je recommence sur PC Windows
1
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701
25 oct. 2018 à 09:23
Bonjour,

Devrait aller
Une autre facon de programmer
https://cjoint.com/c/HJzhwShxsFf
0
Evedll Messages postés 74 Date d'inscription vendredi 6 juillet 2007 Statut Membre Dernière intervention 26 septembre 2023
25 oct. 2018 à 12:02
Bonjour f894009,

Ma demande est qu'il mette en couleur chaque ligne qui contient le mot "*annulé*" dans la colonne C comme tu as pu le voir dans mon fichier. J'ai mis en couleur manuellement les plages concernées en exemple.
Il doit le faire pour chaque occurrence de la colonne.
Je te remercie de ton aide.
Cordialement
Evelyne
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 743
25 oct. 2018 à 12:28
Bonjour,

Une légère modification (que tu aurais pu trouver seule) du code de l'ami f894009 :

Sub Cherche_Couleur()
Dim Trouve As Range, PlageDeRecherche As Range, Plage As Range
Dim Valeur_Cherchee As String
Dim Lig As Long, n As Long, Nb As Long

   Valeur_Cherchee = "*Annulé*"
   With ActiveSheet
      Set PlageDeRecherche = .Columns(3)
      Nb = Application.CountIf(PlageDeRecherche, Valeur_Cherchee)
      If Nb > 0 Then
         Lig = 1
         For n = 1 To Nb
            Lig = .Columns(3).Find(Valeur_Cherchee, .Cells(Lig, 3), , xlPart).Row
            Set Plage = .Range("A" & Lig & ":J" & Lig)
            With Plage
               .Interior.ThemeColor = xlThemeColorAccent2
               .Interior.TintAndShade = 0.799981688894314
            End With
         Next n
      Else
         MsgBox "Pas trouve " & Valeur_Cherchee
      End If
   End With
End Sub
1
Evedll Messages postés 74 Date d'inscription vendredi 6 juillet 2007 Statut Membre Dernière intervention 26 septembre 2023
25 oct. 2018 à 12:48
Merci Pijaku,

Cela fonctionne.
En ce qui me concerne, je n'ai pas de connaissance des macros car je n'ai jamais appris.
Donc j'ai besoin d'un exemple que j’analyse pour mieux comprendre.
Ce que je réussi à faire est tout simplement parce que je puise dans des exemples.

J'ai un peu de mal à concevoir moi même les lignes d'écriture car je ne sais pas toujours quoi ni où placer ce que je veux saisir. Je viens de commencer d'essayer les boucles.

Je fais cependant des progrès grâce à vous tous et j'en suis ravie.

Evelyne
0
Evedll Messages postés 74 Date d'inscription vendredi 6 juillet 2007 Statut Membre Dernière intervention 26 septembre 2023
25 oct. 2018 à 12:49
Merci à vous deux pour votre aide,
Ce fonctionne
Cordialement
Evelyne
0
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701
25 oct. 2018 à 14:05
Salut Pijaku,
Ca flotte??
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 743
25 oct. 2018 à 14:14
Salut,

ça flotte mieux qu'il ne fut un temps.
Merci.
And you?
0
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701
25 oct. 2018 à 14:18
Re,
Pour le moment ca flotte comme disait le gars qui tombait du 25eme etage et qu'a chaque etage une personne demandait "comment ca va?"
0