Sous excel déterminer le nombre de case verte

Bonjour,

je cherche sous excel a déterminer le nombre de case verte qui coïncident avec des cases blanche
Merci a ceux qui pourront m'aider.
bluelinesjr

17 réponses

  1. Contributeur
    Salut le forum

    Merci de détailler un peu plus ta demande, c'est trop vague

    Ou utilise https://www.cjoint.com/ pour joindre un fichier,
    tu recopies ensuite le lien dans ton prochain message.

    Mytå
    0
    1. Contributeur
      Comment as-tu coloré ces cases en vert ?

      Qu signifie exactement "le nombre de case verte qui coïncident avec des cases blanche" ?
      0
      1. oui pardon j'ai oublier de joindre le fichier
        https://www.cjoint.com/?gDx7bbaZds
        En fait il sagit de pouvoir compter le nombre de case verte qui ne tombent pas pendant les jours orangé sur cet exemple.
        0
        1. Contributeur
          Mais il n'y a rien dans tes cellules : ni code, ni mise en forme conditionnelle, rien !
          Sur quoi veux-tu qu'Excel travaille ?

          Au lieu de mettre des couleurs manuellement, tu aurais dû taper V pour vert, O pour orange, etc. et utiliser la mise en forme conditionnelle pour que le logiciel mette en vert la police et le remplissage des cellules contenant la donnée "V" ; pareil pour les autres couleurs.
          Il aurait été alors particulièrement facile d'utiliser la fonction NB.SI pour effectuer tes décomptes.

          Tel que ton fichier a été colorié, tu ne peux faire autrement que de demander à un amateur de VBA de t'écrire une macro ...
          0
          1. Bonsoir le fait est que dans chacune de ces cases il y a déja des lettres que je n'ai pas affichées ici pour centrer le problème uniquement sur les couleurs.
            J'ai fait en sorte grâce à une macro qu'excel reconnaisse quand la couleur de fond est verte (couleur n° 43).
            Mais j'aimerai qu'il ne comptabilise que les cases "hors week-end"
            bonne soirée
            0
            1. Contributeur
              Salut le forum

              Code à mettre dans un module

              Function NbreCellulesCouleur(Plage As Range, Couleur As Byte) As Long 
              'Compter le nombre de cellules d'une couleur donnée dans une plage donnée 
              'Plage: plage de cellules à inspecter 
              'Couleur: valeur de la couleur cherchée 
              
              Application.Volatile 
              
              Dim rCellule As Range 
              
              For Each rCellule In Plage 
                  If rCellule.Interior.ColorIndex = Couleur Then 
                      NbreCellulesCouleur = NbreCellulesCouleur + 1 
                  End If 
              Next rCellule 
              
              End Function 
              


              Formule dans la cellule C33

              =NbreCellulesCouleur(C1:C31;43)

              Mytå
              Versions installées [MsProject 2003(FR), Excel 2003-2007(FR)]
              0
              1. cool merci!
                maintenant je voudrais savoir si je peux de maniere automatique savoir le nombre de cellules verte hors week end...(en utilisant par exemple la colone B comme témoin)
                merci en tous les cas pour vos réponses
                0
                1. Contributeur
                  Re le forum

                  Si tu ne veux pas comptabiliser les Samedi et Dimanche.
                  En colonne B les dates.

                  Code de la macro
                  Function NbreOuvrableCouleur(Plage As Range, Decalage As Integer, Couleur As Byte) As Long 
                  'Compter le nombre de cellules d'une couleur donnée dans une plage donnée 
                  'Plage: plage de cellules à inspecter 
                  'Decalage: offset pour colonne date 
                  'Couleur: valeur de la couleur cherchée 
                  
                  Application.Volatile 
                  
                  Dim rCellule As Range 
                  
                  For Each rCellule In Plage 
                      If rCellule.Interior.ColorIndex = Couleur And _ 
                          Weekday(rCellule.Offset(0, Decalage), vbMonday) < 6 Then 
                              NbreOuvrableCouleur = NbreOuvrableCouleur + 1 
                      End If 
                  Next rCellule 
                  
                  End Function

                  La formule en C33
                  =NbreOuvrableCouleur(C1:C31;2-COLONNE();43)


                  Mytå

                  Versions installées [MsProject 2003(FR), Excel 2003-2007(FR)]
                  0
                  1. merci beaucoup!
                    derniere question y a t il des tutos pour programer ce genre de macro?
                    merci
                    0
                    1. pour info que veux dire "2-COLONNE();43" dans ta ligne de calcul?
                      0
                      1. Contributeur
                        Re le forum

                        Bluelinesjr, c'est pour calculer le décalage dans la macro

                        Weekday(rCellule.Offset(0, Decalage), vbMonday)
                        afin de toujours récupérer la date en colonne B.

                        Formule en Colonne C : décalage de -1 (2-3)
                        Formule en Colonne D : décalage de -2 (2-2)
                        etc...

                        Mytå

                        Versions installées [MsProject 2003(FR), Excel 2003-2007(FR)]
                        0
                        1. peux tu s'il te plais( je sais je rame énormément) me mettre quel serait la formulle en d33? svp
                          merci car je souhaite comprendre ....
                          0
                          1. Contributeur
                            Re le forum

                            Tu n'as qu'à recopier la formule de la cellule C33 vers la droite

                            Formule en D33
                            =NbreOuvrableCouleur(D1:D31;2-COLONNE();43)

                            Formule en E33
                            =NbreOuvrableCouleur(E1:E31;2-COLONNE();43)

                            Mytå
                            0
                            1. merci
                              mais je suis désolé je rencontre un problème car vois tu comme dans ce tableau
                              https://www.cjoint.com/?hcaQ0ZHjhH
                              le nombre de cases verte ne correspond pas...
                              et même si je crois avoir compris une parti de "la logique" de cette macro
                              la raison de ce "bug" m'échappe.
                              0
                              1. Contributeur
                                Re le forum

                                Tu as oublié de mettre le code de la macro.

                                J'ai apporté quelques correctifs pour le fichier.

                                Téléchargement : Ton fichier corrigé

                                Mytå
                                0