XL 2010 Enrichir automatiquement un calendrier

Constantin

XLDnaute Occasionnel
Supporter XLD
Bonjour à tous,
Dans le fichier joint, plusieurs onglets. L'onglet "agents" renseigne l'organisation des salariés du service. L'objectif est d'enrichir avec ces informations (sous forme colorée par exemple) et d'associer pour chacun des ours des mois des 4 trimestres les informations relatives à chaque agent sur ses conditions de présence (Temps partiel, télétravail...)
Plusieurs feuilles sont masquées mais à mon avis ne sont d'aucune utilité dans ma demande.
Vous aviez déjà eu la gentillesse de me formater mes tableaux (mise en forme conditionnelle) pour que les jors fériés s'affichent automatiquement en fonction de l'année, mais là, après trois heures d'essais laborieux et sans succès, je me tourne une fois de plus vers les compétences que vous avez et moi pas...

Merci de votre aide,

Pierre
 

Pièces jointes

  • CONGES 2020 essai.xlsm
    226 KB · Affichages: 15
Solution
Bonjour

Cf. en pièce jointe.

J'ai corrigé la position des tableaux dans les 4 feuilles Trim1 à Trim4.

J'ai mis les MFC dans les feuilles Trim et Trim2.
Attention, la mise en forme rouge commence sur la première ligne de chaque tableau (sélectionner C15 pour définir cette MFC), alors que les autres MFC commencent sur la 3ème ligne de chaque tableau (sélectionner C17 pour définir ces MFC).

On utilise les mêmes formules dans les feuilles Trim1 à Trim4. Il te faut donc copier les formules dans Trim2, et les coller dans Trim3 et Trim4, une par une, et définir les plages adéquates.

Bien mettre les conditions rouge et grise en haut de la fenêtre de MFC pour qu'elles "écrasent" les conditions temps partiel et Télétravail.

@ plus

CISCO

XLDnaute Barbatruc
Bonjour

Peux tu faire quelques tests avec le fichier en pièce jointe, uniquement sur la feuille Trim1 ? Normalement, avec cette méthode, les formules pour l'orange et pour le jaune sont valables pour les 3 mois de cette feuille (mais il ne faut pas changer la disposition adoptée, pas rajouter de ligne... Dans ce dernier cas, il faudrait remplacer les 26 par une autre valeur). On n'a pas besoin de recopier ces deux formules pour chaque mois.

@ plus
 

Pièces jointes

  • CONGES 2020 essai2.xlsm
    225.9 KB · Affichages: 9

Constantin

XLDnaute Occasionnel
Supporter XLD
Peut-être en modifiant les macros du bandeau supérieur en intégrant un message box qui demanderait de vérifier la couleur de la cellule et de proposer de la remplacer ou non par la couleur définie dans la macro ? Mais là, je ne sais même pas si c'est possible
Bonjour

Peux tu faire quelques tests avec le fichier en pièce jointe, uniquement sur la feuille Trim1 ? Normalement, avec cette méthode, les formules pour l'orange et pour le jaune sont valables pour les 3 mois de cette feuille (mais il ne faut pas changer la disposition adoptée, pas rajouter de ligne... Dans ce dernier cas, il faudrait remplacer les 26 par une autre valeur). On n'a pas besoin de recopier ces deux formules pour chaque mois.

@ plus
Oups ...

Je vais avoir besoin d'un décodeur...
Je ne connais pas la fonction que tu appelles dans les cellules de droite (Ent(LIGNE)...
Je vois aucune coloration relative aux options "télétravail" et "Temps partiel" dans le 1er trimestre... Dis-moi ce que j'ai raté.

Désolé mille fois !
 

CISCO

XLDnaute Barbatruc
Bonsoir

Les calculs dans les colonnes à droite des tableaux ne servent plus. Tu peux les supprimer. Ils m'ont servi pour trouver ce que j'allais mettre dans les formules dans les MFC. J'explique :

Dans mes premiers fichiers, pour le jaune, il fallait mettre une formule pour le mois de janvier utilisant les données de la ligne 16, presque la même formule pour le mois de février en utilisant les données de la ligne 42, et une troisième formule semblable pour le mois de mars en utilisant les données de la ligne 70. Soit 3 formules, 3 lignes dans la fenêtre des MFC uniquement pour le jaune. Idem pour l'orange.
Juste pour ces deux couleurs, il aurait fallu utiliser 4 x 6 = 24 formules. Pas très pratique...

Il me fallait trouver une formule plus polyvalente, utilisant automatiquement les données de la ligne 16 lorsque le calcul se fait dans le tableau correspondant à janvier, celles de la ligne 42 pour le tableau de février, et celles de la ligne 70 pour mars.

Par ex, lorsqu'on est dans D19, DECALER(D19;-MOD(LIGNE()-16;26);0) donne DECALER(D19;-MOD(19-16;26);0)=DECALER(D19;-MOD(3;26);0)=DECALER(D19;-3;0)=D16. Et c'est ce que je voulais dans la formule dans la MFC.

Autre exemple, dans C48, DECALER(C48;-MOD(LIGNE()-16;26);0)=DECALER(C48;-MOD(48 - 16;26);0)= DECALER(C48;-MOD(32;26);0)=DECALER(C48;-6;0)=C42. Et c'est ce que je voulais dans la formule dans la MFC pour février.

Au passage, je vois que le tableau mars est mal positionné : On a 42- 16 = 26, d'où le 26 dans les formules. Et malheureusement, le tableau correspondant à mars n'est pas placé 26 lignes plus bas. On a 70 - 42 = 28 et pas 26. Il faut placer ce tableau 2 lignes plus haut. Le problème vient du fait que tes tableaux n'ont pas le même nombre de ligne.

@ plus
 
Dernière édition:

Constantin

XLDnaute Occasionnel
Supporter XLD
Bonsoir

Les calculs dans les colonnes à droite des tableaux ne servent plus. Tu peux les supprimer. Ils m'ont servi pour trouver ce que j'allais mettre dans les formules dans les MFC. J'explique :

Dans mes premiers fichiers, pour le jaune, il fallait mettre une formule pour le mois de janvier utilisant les données de la ligne 16, presque la même formule pour le mois de février en utilisant les données de la ligne 42, et une troisième formule semblable pour le mois de mars en utilisant les données de la ligne 70. Soit 3 formules, 3 lignes dans la fenêtre des MFC uniquement pour le jaune. Idem pour l'orange.
Juste pour ces deux couleurs, il aurait fallu utiliser 24 formules. Pas très pratique...

Il me fallait trouver une formule plus polyvalente, utilisant automatiquement les données de la ligne 16 lorsque le calcul se fait dans le tableau correspondant à janvier, celles de la ligne 42 pour le tableau de février, et celles de la ligne 70 pour mars.

Par ex, lorsqu'on est dans D19, DECALER(D19;-MOD(LIGNE()-16;26);0) donne DECALER(D19;-MOD(19-16;26);0)=DECALER(D19;-MOD(3;26);0)=DECALER(D19;-3;0)=D16. Et c'est ce que je voulais dans la formule dans la MFC.

Autre exemple, dans C48, DECALER(C48;-MOD(LIGNE()-16;26);0)=DECALER(C48;-MOD(48 - 16;26);0)= DECALER(C48;-MOD(32;26);0)=DECALER(C48;-6;0)=C42. Et c'est ce que je voulais dans la formule dans la MFC pour février.

Au passage, je vois que le tableau mars est mal positionné : On a 42- 16 = 26, d'où le 26 dans les formules. Et malheureusement, le tableau correspondant à mars n'est pas placé 26 lignes plus bas. On a 70 - 42 = 28 et pas 26. Il faut placer ce tableau 2 lignes plus haut. Le problème vient du fait que tes tableaux n'ont pas le même nombre de ligne.

@ plus
Je vais dès demain corriger ces écarts de hauteurs...

Tu es sacrément courageux d'aider un ignare !

Bonne nuit, je me lève à 6h00 demain...

Pierre
 

CISCO

XLDnaute Barbatruc
Rebonsoir

Rebonjour

Je ne sais pas résoudre ce problème

@ plus

Galougalou a donné la solution sur un autre post. Il suffit de rajouter la ligne de code
Selection.FormatConditions.Delete
dans chaque macro concernée, en dessous de call Trace. J'ai testé, ça fonctionne.
Mais cela pose un autre problème... A savoir que lorsqu'on utilise le bouton Effacer, on obtient systématiquement une cellule blanche, et pas celui de la MFC, même si parfois, il le faudrait.

@ plus
 
Dernière édition:

Constantin

XLDnaute Occasionnel
Supporter XLD
Rebonsoir



Galougalou a donné la solution sur un autre post. Il suffit de rajouter la ligne de code
Selection.FormatConditions.Delete
dans chaque macro concernée, en dessous de call Trace. J'ai testé, ça fonctionne.
Mais cela pose un autre problème... A savoir que lorsqu'on utilise le bouton Effacer, on obtient systématiquement une cellule blanche, et pas celui de la MFC, même si parfois, il le faudrait.

@ plus
Félicitations les amis !
Ça marche super bien ! Un grand merci à Galougalou que je vais m'empresser de remercier.
Il me reste à ajouter les MFC relatives aux week-end dans les tableaux car si les MFC "temps partiel et télétravail", après avoir supprimé les lignes en trop entre février et mars, fonctionnent bien, les MFC de WE ne sont pas présentes en dehors de janvier. Je vais essayer d'y remédier !

Concernant les demandes que tu a ajouté à Galougalou relatives à un retour vers les MFC "temps partiel et télétravail", ce n'est pas franchement utile car si une personne est en arrêt ou en vacances, il n'est pas en train de travailler. Au besoin, s'il devait y avoir un retour, dans la mesure où ce serait à la marge, on le ferait "manuellement".

J'attaque donc sur mes fichiers de travail en te remerciant infiniment de ton aide précieuse et indispensable vu mon petit niveau !

Je te tiens au courant en espérant ne pas à avoir à te solliciter à nouveau.

Pierre
 

CISCO

XLDnaute Barbatruc
Bonjour

Félicitations les amis !
...
Il me reste à ajouter les MFC relatives aux week-end dans les tableaux car si les MFC "temps partiel et télétravail", après avoir supprimé les lignes en trop entre février et mars, fonctionnent bien, les MFC de WE ne sont pas présentes en dehors de janvier. Je vais essayer d'y remédier !

Pierre

Après avoir sélectionné la cellule C17, tu pourras faire avec la condition
=JOURSEM(DECALER(C17;-MOD(LIGNE()-15;26);0);3)>=5

Il te faudra peut être aussi redéfinir les plages sur lesquelles doit agir cette MFC.

Il te faut corriger la position du tableau du mois de mars (et peut être celle des tableaux juin, septembre et décembre) pour que le 26 corresponde bien à la situation.

@ plus
 

Constantin

XLDnaute Occasionnel
Supporter XLD
Bonjour



Après avoir sélectionné la cellule C17, tu pourras faire avec la condition
=JOURSEM(DECALER(C17;-MOD(LIGNE()-15;26);0);3)>=5

Il te faudra peut être aussi redéfinir les plages sur lesquelles doit agir cette MFC.

Il te faut corriger la position du tableau du mois de mars (et peut être celle des tableaux juin, septembre et décembre) pour que le 26 corresponde bien à la situation.

@ plus
Vraiment désolé CISCO. Je ne vois pas comment utiliser cette formule ni, compte tenu de mon remarquable niveau, de savoir à quoi elle sert.
J'ai ajouter dans les macros la phrase magique. C'est OK.

Par contre, après avoir redimensionné mes hauteurs de tableaux, j'ai essayé d'exporter les formules de MFC dans les autres mois... Cela m'affiche des bêtises (exemple télétravail un samedi...).

Donc, tu l'as compris, je sèche lamentablement... Je t'envoie mon fichier de travail pour que tu vois où j'en suis et si bien sûr tu n'en a pas marre de t'occuper d'un nullos !

Bien à toi,
Pierre
 

Pièces jointes

  • CONGES 2020 PHISPV2.xlsm
    230.4 KB · Affichages: 2

CISCO

XLDnaute Barbatruc
Bonjour

Cf. en pièce jointe.

J'ai corrigé la position des tableaux dans les 4 feuilles Trim1 à Trim4.

J'ai mis les MFC dans les feuilles Trim et Trim2.
Attention, la mise en forme rouge commence sur la première ligne de chaque tableau (sélectionner C15 pour définir cette MFC), alors que les autres MFC commencent sur la 3ème ligne de chaque tableau (sélectionner C17 pour définir ces MFC).

On utilise les mêmes formules dans les feuilles Trim1 à Trim4. Il te faut donc copier les formules dans Trim2, et les coller dans Trim3 et Trim4, une par une, et définir les plages adéquates.

Bien mettre les conditions rouge et grise en haut de la fenêtre de MFC pour qu'elles "écrasent" les conditions temps partiel et Télétravail.

@ plus
 

Pièces jointes

  • CONGES 2020 essai2.xlsm
    227 KB · Affichages: 6

Constantin

XLDnaute Occasionnel
Supporter XLD
Bonjour

Cf. en pièce jointe.

J'ai corrigé la position des tableaux dans les 4 feuilles Trim1 à Trim4.

J'ai mis les MFC dans les feuilles Trim et Trim2.
Attention, la mise en forme rouge commence sur la première ligne de chaque tableau (sélectionner C15 pour définir cette MFC), alors que les autres MFC commencent sur la 3ème ligne de chaque tableau (sélectionner C17 pour définir ces MFC).

On utilise les mêmes formules dans les feuilles Trim1 à Trim4. Il te faut donc copier les formules dans Trim2, et les coller dans Trim3 et Trim4, une par une, et définir les plages adéquates.

Bien mettre les conditions rouge et grise en haut de la fenêtre de MFC pour qu'elles "écrasent" les conditions temps partiel et Télétravail.

@ plus
Mille merci CISCO,

J'ai pu mettre à profit tous tes précieux conseils et j'y suis enfin arrivé !
Grâce à ton aide, mon fichier fonctionne parfaitement !

Je pense donc avoir fini de t'embêter.

Bonne fin de semaine,

Pierre Constantin
 

CISCO

XLDnaute Barbatruc
Bonjour

Pour reproduire les MFC, il y avait plus simple : Au lieu de réécrire les formules, il suffisait de copier la feuille Trim1, de la coller sur Trim2, Trim3 et Trim4, puis de changer les dates et le nom des mois.

C'est trop tard, mais bon, cela servira peut-être à d'autres personnes.

@ plus
 

Statistiques des forums

Discussions
311 543
Messages
2 080 560
Membres
101 247
dernier inscrit
kamzo