Comptabilité des remplacements
Bonjour à tous,
Dans le cadre de ma mission, je dois créer une macro permettant de comptabilisé les remplacements en fonction d'une liste de code.
Par soucis de confidentialité, je ne peux pas joindre le fichier excel.
Cependant, je joins des screens pour argumenter mon post.
Dans un premier temps, j'ai utilisé une fonction me permettant de comptabilisé les couleurs en fonction d'une plage de données. La fonction est la suivante :
Function NBCOULEURS(plage As Range, cc As Range) As Integer
Dim clr(), n%, i%, c As Range
Application.Volatile
ReDim clr(cc.Cells.Count - 1): i = -1
For Each c In cc.Cells
i = i + 1: clr(i) = c.Interior.Color
Next c
For Each c In plage
For i = 0 To UBound(clr)
If c.Interior.Color = clr(i) Then
n = n + 1: Exit For
End If
Next i
Next c
NBCOULEURS = n
End FunctionJ'ai rencontré un problème de variation de couleur, de ce fait j'ai utilisé une autre fonction NS.SI.ENS avec une liste de code.
Ca a bien fonctionné, un autre problème est alors subvenu, le changement de colonne. De ce fait, la plage sélectionnée n'était plus adéquate.
Je recherche donc une astuce permettant d'utiliser la fonction précédente selon la liste de code jointe tout en me permettant d'avoir une selection de plage du mois en cours (cf. image mois de février).
La plage ne peut être fixe car d'une année à l'autre le nombre de jour annuel varie.
Bien cordialement,
MacFry
Des informations complémentaires sur le mois de février, on peut apercevoir des cases grisés, elles correspondent aux remplacements.
La macro permet via un bouton sur une feuille excel annexe de faire la comptabilité automatique (ceci marche très bien).
La version d'excel est 2007.
Je dois également copié/coller de manière automatique les noms de chaque agent avant de comptabiliser les remplacement nomitatif. Je rencontre le même problème de colonne qui change d'une année sur l'autre.
Bonjour,
Je reconnais mon écriture dans la fonction, mais je ne vois pas quel est ton problème.
Tu appliques la fonction à une plage dont il faut dénombrer les cellules de certaines couleurs, et tu lui fournis également une plage témoin des couleurs à dénombrer. Sa particularité est de prendre en compte plusieurs couleurs simultanément pour fournir un décompte global.
Dès lors que tu fournis les arguments voulus à la fonction, elle renvoie le résultat !
Les variations de couleurs n'ont rien à voir ! à toi de fournir les bonnes couleurs, et toutes.
Les changements de colonne non plus, c'est un problème d'adressage, il convient d'avoir un adresssage adéquat éventuellement adaptable. Il faut éventuellement concevoir des plages qui s'adaptent aux variations !
J'ai l'impression que ton problème concerne l'organisation de ton fichier, mais là il est difficile de l'examiner sans un fichier qui permettent de l'étudier.
Cordialement.
Bonjour,
En effet c'est votre écriture
Donc le problème qui j'ai rencontré quant à cette fonction est que la personne en charge du planning a fait évolué sa palette de couleurs....
J'ai donc envisagé d'effectuer la comptabilité en fonction d'une liste de code (qui reste standard).
J'avais automatisé le système et de ce fait la macro balayait et comptabilisait les remplacements grâce à votre fonction. J'ai mis ça en place sur le planning 2016.
"Tout était pour le mieux dans le meilleur des mondes" jusqu'à que je reçoive le planning 2017 et là à mon grand désarroi j'ai constaté qu'il y avait des décalages jusqu'à 4 colonnes.
Connaissez-vous une un moyen de mettre une condition de balayage ?
Ex : si 1er du mois alors on peut commencer la comptabilité
Bonjour,
Donc le problème qui j'ai rencontré quant à cette fonction est que la personne en charge du planning a fait évolué sa palette de couleurs....
Justement, cette possibilité était prévue au départ puisque la palette (plage de cellules aux couleurs de cette "palette") est passée à la fonction. Et si on met cette palette au même endroit (même plage), même pas besoin de modifier la fonction !
Cela ne représente donc pas un problème, et c'est la même chose pour toute fonction ! Si on modifie quelque chose, on ajuste la formule en conséquence.
planning 2017 et là à mon grand désarroi j'ai constaté qu'il y avait des décalages jusqu'à 4 colonnes.
Pareil ! Une formule ça modifie ! Si la plage à dénombrer a changé, il est raisonnable de modifier la formule de façon que la nouvelle plage visée remplace l'ancienne !
La formule (la formule est ce que tu tapes en commençant par un signe =) utilise une fonction (la fonction est une procédure de calcul, appelée par son nom), laquelle comporte des arguments, soit des parties mobiles, informations qu'on lui passe et qu'elle va utiliser pour calculer. On lui passe la zone où elle doit calculer (adresse d'une plage de cellule) et une zone contenant les critères de calcul (soit une autre plage de cellule où elle trouvera les couleurs constituant les critères du calcul qui lui est demandé). Ces parties sont variables dans la formule, justement parce qu'elles peuvent varier.
La zone de calcul change, on la modifie dans la formule. La zone de critères change, on la modifie aussi dans la formule. On change un ou plusieurs critères (soit une ou plusieurs couleurs), on n'a pas besoin de modifier la formule, mais on change les couleurs dans la zone qui représente la "palette".
Je ne vois pas ce qui te chagrine ! Une telle situation n'a rien d'anormal !
Cordialement.