Rapport de message :*
 

Re: Additionner par couleur

Titre du sujet : Re: Additionner par couleur
par myDearFriend! le 14/12/2010 23:52:12

Bonsoir 272129,

Si j'ai bien compris la situation, tu trouveras en pièce jointe mon interprétation du problème...

Un clic droit sur une cellule "Horaire" provoque l'insertion de la valeur 1 (et donc de sa couleur de fond en noir) et un autre clic droit efface cette valeur.

Tu peux également agir par « plage » en sélectionnant d'abord les cellules souhaitées et en faisant un clic droit sur cette sélection.

Pour réaliser ça, j'ai d'abord créé une plage nommée « zoneHeures » englobant l'ensemble des cellules Horaire sur la feuille (toutes journées confondues). (Pour apprendre à nommer une plage, voir l'excellent tutoriel de notre amie Mth : Nommer une Plage de Cellules)

J'ai ensuite fait un grand nettoyage de la feuille de calcul :
  • en appliquant le format conditionnel uniquement là où il y en a besoin.
  • en recréant les formules correctes de Total Heures et Nbre de personnes (ça je l'ai fait uniquement sur la journée du Lundi, je te laisse vérifier le reste...)

J'ai ensuite ajouté le simple code VBA suivant dans le module de code de la feuille "S52" :
Option Explicit

'myDearFriend!  -  www.mdf-xlpages.com
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
Dim Plage As Range
    Set Plage = Application.Intersect(Target, Range("zoneHeures"))
    If Not Plage Is Nothing Then
        Cancel = True
        Plage.Value = IIf(Target(1).Value = 1, "", 1)
    End If
End Sub

En espérant que ça te convienne...

Cordialement,