Définir une plage des jours d'un calendrier mensuel

Résolu
Vaudousi -  
PHILOU10120 Messages postés 6445 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,
J'ai téléchargé depuis le net un exemple de calendrier perpétuel affichant 12 mois. Il fonctionne parfaitement. Sur le m^me feuille j'ai un tableau de 12 lignes et trois colonnes (Mois, NbJours, Reste). Les noms de mois sont remplis. Je voudrais colorier (manuellement) en rouge les jours de congé d'une personne et que la colonne NbJours soit remplie (automatiquement) si j'ajoute ou soustrait une cellule colorée.

Je sais comment compter les cellules coloriées, mais pas comment définir les plages de recherche de chaque mois.

Merci pour votre aide. Salutations
José

A voir également:

5 réponses

PHILOU10120 Messages postés 6445 Date d'inscription   Statut Contributeur Dernière intervention   824
 
Bonjour

Pouvez-vous insérer une colonne devant votre tableau mensuel et mettre cette formule
colonne A =mois(B1) B1 contient la date du jour
et pour compter la plage du mois indéxer la formule sur cette colonne

=NB.SI.ENS(A1:A31;2;C1:C31;"CA")

Dans cet exemple on vérifie le mois en colonne A et on compte le nombre de jour marqué Congés Annuel "CA"
0
Vaudousi
 
Bonjour Philou

Je vais essayer d'être plus clair. Je voudrais définir une plage de cellules non vides : les dates d'un mois.

Chaque calendrier mensuel a 42 cellules. le 1er janvier 2013 commence un mardi. La première cellule est donc vide. les treize dernières cellules sont vides.

Je n'arrive pas à faire fonctionner une procédure voisine trouvée sur ce site.

Je suis donc toujours en quête d'aide.

Merci

José
0
via55 Messages postés 14512 Date d'inscription   Statut Membre Dernière intervention   2 746
 
Bonsoir

Comment compte tu les cellules colorées ?
par une macro en VBA ? Quel en est le code ?

Cdlmnt
0
Vaudousi
 
Cette routine fonctionne correctement. Je n'en suis pas l'auteur.

'La couleur n'est pas donnée par un numéro, mais par la couleur dans une cellule.
Public Function NbColor(Plage As Range, vCellcolor As Range) As Byte
Dim vColorTest As Long
Dim Compteur As Long
Dim vColorCell As Range

Compteur = 0
vColorTest = vCellcolor.Interior.Color
For Each vColorCell In Plage
If vColorCell.Interior.Color = vColorTest Then
Compteur = Compteur + 1
End If
Next vColorCell

NbColor = Compteur
End Function

'Exemple d'utilisation :

'A1:A20 est la plage de cellule susceptible d'avoir les couleurs
'A21 est la référence de la cellue qui contient la couleur à tester.
'On saisit dans une cellule =NbColor(A1:A20;A21)

Salut
0
via55 Messages postés 14512 Date d'inscription   Statut Membre Dernière intervention   2 746
 
La macro fonctionne bien alors où est le problème ? pourquoi s'inquiéter des cellules vides ?
Si le mois de janvier est par exemple en A2 A40
Et que la janvier de ton propre tableau est ligne 42 avec NBjours en B42 et Reste enC42 et si tu colore en rouge une cellule test en D42, la formule =NBColor(A2:40;D42) va bien te donner le nombre de cases en rouge en janvier dans le calendrier
Où il y a un élément que je n'ai pas compris ?

Cdlmnt
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
PHILOU10120 Messages postés 6445 Date d'inscription   Statut Contributeur Dernière intervention   824
 
Bonjour

Pour mon exemple
Colonne A9:A50 la formule =MOIS(B1)
Colonne B9:B50 la date au format JJ JJJJ
colonne C9:C50 les cellules colorées
en C7 valeur 1 pour janvier
en D7 valeur 2 pour février
en C1:C3 les cellules avec les couleurs de référence


En D1:D3 cette formule

=nbcolor(INDIRECT(ADRESSE(EQUIV(C$7;$A$9:$A$50;0)+8;3;1;1)&":"&ADRESSE(EQUIV(D$7;$A$9:$A$50;0)+7;3;1;1));$C1)
0