XL 2016 Afficher les jours et les dates dans un fichier mensuel

vivi21

XLDnaute Occasionnel
Bonjour,

Je souhaite afficher les jours et les dates automatiquement en fonction du mois dans un fichier mensuel et peut-être en référence avec l'année.

Je vous joins mon document.

Merci pour vos aiguillages et votre aide.
Vivi
 

Pièces jointes

  • test_jour.xlsx
    19.5 KB · Affichages: 14

vivi21

XLDnaute Occasionnel
Merci pour ton aide P56. Rare tu es.
J'ai peu d'expérience pour pouvoir faire une feuille pour 12 mois. :confused:

les nbr de congés, jours ouvrés sont uniquement pour avoir une vérification avec le nombre de jour totale des activités passées par la personne. Je n'ai pas vraiment besoin de la feuille bilan.

J'ai un fichier de listes_codes sur mon serveur. Je peux ajouter des activités ou en supprimer sans le faire sur chaque fiches d'activités de chaque personnel qui se trouve sur le serveur également mais pas au même endroit. Cette liste permet d'afficher les élément dans chaque feuille dans catégorie de l'action et nom détaillé.

J'ai mon fichier activité par personne. Que chaque personne rempli individuellement.
Ensuite, il vérifie, s'il le souhaite leur activité, dans la feuille analye activités via un TCD.

L'envoi me permet de récupérer les infos dans la feuille TAB car je dois ensuite compiler toutes les feuilles d'activités des personnes afin d'en refaire un TCD avec la partie comptable bien distincte d'excel.

Je verrouille toutes les cellules qui ne doivent pas être saisie.
Je ne sais pas si je suis claire.

Merci encore.

Virginie.
 

Pièces jointes

  • 2023_Activités_test.zip
    408 KB · Affichages: 1

p56

XLDnaute Occasionnel
Alors voici un premier jet :
* le planning "1 salarié", avec sa Bdd,
* l'onglet "TAB" avec un tableau "T_Activ",
* un onglet "Activités" (présentation identique à votre fichier) avec une toupie pour la navigation de mois en mois

Sur cet onglet, une saisie sur une ligne enregistre les info dans TAB et à l'affichage d'un mois les infos de ce mois sont à nouveau affichés
(attention la colonne J contient un n° Id utile pour la lecture/écriture)

Est-ce que ça peut vous être utile?
P.
 

Pièces jointes

  • Mois_Vertical_3.xlsm
    64 KB · Affichages: 16

vivi21

XLDnaute Occasionnel
Bonjour P56,

Merci beaucoup pour ce premier jet. Je vais essayer de comprendre la construction du fichier.
Il me faut ajouter l'onglet Analyse de l'activité car les personnes en ont besoin pour rendre compte à la direction chaque mois ou à un instant T sur une activité.

Il faut que j'ajoute également ma liste de code qui concerne les catégorie d'action et nom détaillé.

Bonne journée,
Virginie.
 

vivi21

XLDnaute Occasionnel
Alors voici un premier jet :
* le planning "1 salarié", avec sa Bdd,
* l'onglet "TAB" avec un tableau "T_Activ",
* un onglet "Activités" (présentation identique à votre fichier) avec une toupie pour la navigation de mois en mois

Sur cet onglet, une saisie sur une ligne enregistre les info dans TAB et à l'affichage d'un mois les infos de ce mois sont à nouveau affichés
(attention la colonne J contient un n° Id utile pour la lecture/écriture)

Est-ce que ça peut vous être utile?
P.
Bonjour P56,

J'aimerais avoir les colonnes D; E avec un fond bleu et les autres avec un fond vert mais le gris reste. Comment puis-je faire ?
1671118861654.png
 

p56

XLDnaute Occasionnel
Bonsoir,
Il s'agit d'une simple mise en forme conditionnelle.
Pour se passer du gris, la 2ème règle est à supprimer : =MOD(COLONNE ...
Capture d’écran 2022-12-15 170052.jpg

Sinon, il n'y a aucun soucis pour ajouter d'autres onglets (liste de code, analyse, ....)
P.
 
Dernière édition:

vivi21

XLDnaute Occasionnel
Bonsoir,
Il s'agit d'une simple mise en forme conditionnelle.
Pour se passer du gris, la 2ème règle est à supprimer : =MOD(COLONNE ...
Regarde la pièce jointe 1157993
Sinon, il n'y a aucun soucis pour ajouter d'autres onglets (liste de code, analyse, ....)
P.
Bonjour P, et merci pour toutes ces explications. Vous êtes formidables et je me rends compte que j'ai vraiment un petit niveau dans Excel.

Sur la feuille planning, je n'ai pas besoin des totaux de chaque semaine finalement;

Mais j'aurais besoin d'avoir une ligne qui va comptabiliser l'ensemble des colonnes pour l'année. Si j'ai rempli que les 3 premiers mois j'aurai le total pour les 3 premiers mois.

Par contre, on me demande que ce fichier soit prérempli au niveau prévisionnel et cela permet aussi de ne faire que quelques changements sur l'année. Cela implique qu'il me faudrait une seconde ligne de totaux l'une pour l'annuel (qui sera peut être calculé dans sa globalité du fait du prévisionnel) et une autre me permettant de comptabiliser uniquement lorsque l'on est sur l'onglet du mois. Si je sélectionne le mois de Mars je n'aurais que le total du mois de Janvier Février Mars. Je ne sais pas si je suis claire dans ma demande.

Merci P56.
Virginie
 

p56

XLDnaute Occasionnel
Bonjour Virginie,

Ok, je pense avoir saisi.
Alors il suffit de reprendre les formules de la ligne 35 (totaux mensuel) et de modifier les 2 conditions de dates :

* pour avoir le total Annuel de la colonne [Durée] :
=SOMME.SI.ENS(T_Bdd[Durée];T_Bdd[Date];">="&DATE($B$2;1;1);T_Bdd[Date];"<"&DATE($B$2+1;1;1);T_Bdd[Salarié];$E$1)

* pour avoir le total Periode de la colonne [Durée] :
=SOMME.SI.ENS(T_Bdd[Durée];T_Bdd[Date];">="&DATE($B$2;1;1);T_Bdd[Date];"<="&DATE($B$2;$C$2+1;0);T_Bdd[Salarié];$E$1)

(avec ces 2 infos au format [h]:mm)


et similaire pour les autres :
* total Annuel de la colonne [Jour travaillé] :
=SOMME.SI.ENS(T_Bdd[Jour travaillé];T_Bdd[Date];">="&DATE($B$2;1;1);T_Bdd[Date];"<"&DATE($B$2+1;1;1);T_Bdd[Salarié];$E$1)


* total Periode de la colonne [Jour travaillé] :
=SOMME.SI.ENS(T_Bdd[Jour travaillé];T_Bdd[Date];">="&DATE($B$2;1;1);T_Bdd[Date];"<="&DATE($B$2;$C$2+1;0);T_Bdd[Salarié];$E$1)

etc pour les autres

Est-ce que j'ai bon?
P.
 
Dernière édition:

vivi21

XLDnaute Occasionnel
Bonjour Virginie,

Ok, je pense avoir saisi.
Alors il suffit de reprendre les formules de la ligne 35 (totaux mensuel) et de modifier les 2 conditions de dates :

* pour avoir le total Annuel de la colonne [Durée] :
=SOMME.SI.ENS(T_Bdd[Durée];T_Bdd[Date];">="&DATE($B$2;1;1);T_Bdd[Date];"<"&DATE($B$2+1;1;1);T_Bdd[Salarié];$E$1)

* pour avoir le total Periode de la colonne [Durée] :
=SOMME.SI.ENS(T_Bdd[Durée];T_Bdd[Date];">="&DATE($B$2;1;1);T_Bdd[Date];"<="&DATE($B$2;$C$2+1;0);T_Bdd[Salarié];$E$1)

(avec ces 2 infos au format [h]:mm)


et similaire pour les autres :
* total Annuel de la colonne [Jour travaillé] :
=SOMME.SI.ENS(T_Bdd[Jour travaillé];T_Bdd[Date];">="&DATE($B$2;1;1);T_Bdd[Date];"<"&DATE($B$2+1;1;1);T_Bdd[Salarié];$E$1)


* total Periode de la colonne [Jour travaillé] :
=SOMME.SI.ENS(T_Bdd[Jour travaillé];T_Bdd[Date];">="&DATE($B$2;1;1);T_Bdd[Date];"<="&DATE($B$2;$C$2+1;0);T_Bdd[Salarié];$E$1)

etc pour les autres

Est-ce que j'ai bon?
P.
Merci merci merci P56, cela fonctionne parfaitement.
 

vivi21

XLDnaute Occasionnel
Bonjour Virginie,

Ok, je pense avoir saisi.
Alors il suffit de reprendre les formules de la ligne 35 (totaux mensuel) et de modifier les 2 conditions de dates :

* pour avoir le total Annuel de la colonne [Durée] :
=SOMME.SI.ENS(T_Bdd[Durée];T_Bdd[Date];">="&DATE($B$2;1;1);T_Bdd[Date];"<"&DATE($B$2+1;1;1);T_Bdd[Salarié];$E$1)

* pour avoir le total Periode de la colonne [Durée] :
=SOMME.SI.ENS(T_Bdd[Durée];T_Bdd[Date];">="&DATE($B$2;1;1);T_Bdd[Date];"<="&DATE($B$2;$C$2+1;0);T_Bdd[Salarié];$E$1)

(avec ces 2 infos au format [h]:mm)


et similaire pour les autres :
* total Annuel de la colonne [Jour travaillé] :
=SOMME.SI.ENS(T_Bdd[Jour travaillé];T_Bdd[Date];">="&DATE($B$2;1;1);T_Bdd[Date];"<"&DATE($B$2+1;1;1);T_Bdd[Salarié];$E$1)


* total Periode de la colonne [Jour travaillé] :
=SOMME.SI.ENS(T_Bdd[Jour travaillé];T_Bdd[Date];">="&DATE($B$2;1;1);T_Bdd[Date];"<="&DATE($B$2;$C$2+1;0);T_Bdd[Salarié];$E$1)

etc pour les autres

Est-ce que j'ai bon?
P.
Bonjour P56,

Tout fonctionne bien j'ai juste un petit souci car je souhaite verrouiller certaines cellules. En fait je vais avoir 2 types de fichier en fonctionne des personnes. L'un où je n'ai que les heures à remplir et l'autre où je n'ai que le nombre de jour à remplir.
Du coup, je pensais qu'en verrouillant certaines cellules j'aurais pu faire 2 fichiers distincts mais la protection empêche de cliquer su tel ou tel mois. Comment puis-je pour débloquer ce problème ? Merci encore pour ton aide préciseuse.
Virginie
 

p56

XLDnaute Occasionnel
Ach Gott, vom Himmel sieh darein!
Les démons de la protection! ... Les ennuis commencent ...

Alors pour se compliquer l'existence :

* La cellule A1 du planning (et des activités) ne doit pas être verrouillée. Jamais.

* Dans le code dans chaque procédure il est utile d'ajouter les 2 lignes : .Unprotect et .protect (avec éventuellement le mot de passe choisi) de la façon suivante :

VB:
    With Sheets("Planning")' ou with activesheet
        .Unprotect  ' ou .Unprotect "password"

        ' blablabla
        ' ...

        .Protect    ' ou .Protect "password"
    End With


Et ça dans toutes les procédures sauf Saisie et Sauve

Le tout sans garantie d'absence de bugs générés potentiellement par cette protection de malheur.

Ceci dit, dans le malheur il y a du bon.
Avec ce mauvais coup du Protect, je viens de me rendre compte d'une Kolossale Erreur (my bad). Voici la correction de Saisie et Sauve en .txt (la function Sauve remplace la Sub Sauve). Module Accueil Only.

Ach Gott, wie manches Herzeleid!
P.
 

Pièces jointes

  • Correctif_19dec2022.txt
    1.3 KB · Affichages: 13

vivi21

XLDnaute Occasionnel
Ach Gott, vom Himmel sieh darein!
Les démons de la protection! ... Les ennuis commencent ...

Alors pour se compliquer l'existence :

* La cellule A1 du planning (et des activités) ne doit pas être verrouillée. Jamais.

* Dans le code dans chaque procédure il est utile d'ajouter les 2 lignes : .Unprotect et .protect (avec éventuellement le mot de passe choisi) de la façon suivante :

VB:
    With Sheets("Planning")' ou with activesheet
        .Unprotect  ' ou .Unprotect "password"

        ' blablabla
        ' ...

        .Protect    ' ou .Protect "password"
    End With


Et ça dans toutes les procédures sauf Saisie et Sauve

Le tout sans garantie d'absence de bugs générés potentiellement par cette protection de malheur.

Ceci dit, dans le malheur il y a du bon.
Avec ce mauvais coup du Protect, je viens de me rendre compte d'une Kolossale Erreur (my bad). Voici la correction de Saisie et Sauve en .txt (la function Sauve remplace la Sub Sauve). Module Accueil Only.

Ach Gott, wie manches Herzeleid!
P.
Merci P56, cela fonctionne super bien. Bonne journée.
 

vivi21

XLDnaute Occasionnel
Ach Gott, vom Himmel sieh darein!
Les démons de la protection! ... Les ennuis commencent ...

Alors pour se compliquer l'existence :

* La cellule A1 du planning (et des activités) ne doit pas être verrouillée. Jamais.

* Dans le code dans chaque procédure il est utile d'ajouter les 2 lignes : .Unprotect et .protect (avec éventuellement le mot de passe choisi) de la façon suivante :

VB:
    With Sheets("Planning")' ou with activesheet
        .Unprotect  ' ou .Unprotect "password"

        ' blablabla
        ' ...

        .Protect    ' ou .Protect "password"
    End With


Et ça dans toutes les procédures sauf Saisie et Sauve

Le tout sans garantie d'absence de bugs générés potentiellement par cette protection de malheur.

Ceci dit, dans le malheur il y a du bon.
Avec ce mauvais coup du Protect, je viens de me rendre compte d'une Kolossale Erreur (my bad). Voici la correction de Saisie et Sauve en .txt (la function Sauve remplace la Sub Sauve). Module Accueil Only.

Ach Gott, wie manches Herzeleid!
P.
Bonjour P56,

J'ai une erreur dans mon fichier que je n'arrive pas à résoudre. Lorsque je modifie des lignes (de G5 àN5) par exemple. Je mets 1 dans G5 mais je me suis trompée je souhaite mettre 1 dans K5 cela compile les 2.
Si je supprime le 1 de G5, il le garde dans la feuille BDD. Alors qu'il faudrait annulé la ligne et garder la dernière manipulation.
Voici le fichier pour mieux comprendre
Désolée de t'ennuyer encore avec mon problème.
 

Pièces jointes

  • test.zip
    22 bytes · Affichages: 8

p56

XLDnaute Occasionnel
Bonjour Virginie,

No problemo c'est simple, le droit à l'erreur existe!

Pour corriger une saisie, par exemple j'ai saisi 1 dans la mauvaise colonne, il me suffit de saisir à la place un 0 (zéro) pour gommer ce "mauvais" 1

Même chose pour les horaires, si on a un couple de valeur genre 8:00 12:00 mais que la personne est absente en fait ce jour là, on saisit 0 et 0 (zéro et zéro)

Et si on veut ne pas faire apparaitre les 0 sur la feuille : Fichier/Options/Options avancées/Partie "Option d'affichage de la feuille de calcul", et décocher "Afficher un zéro dans les cellules qui ont une valeur nulle"

Ce qui permet de tenir les comptes parfaitement à jour.

P.
 

vivi21

XLDnaute Occasionnel
Bonjour Virginie,

No problemo c'est simple, le droit à l'erreur existe!

Pour corriger une saisie, par exemple j'ai saisi 1 dans la mauvaise colonne, il me suffit de saisir à la place un 0 (zéro) pour gommer ce "mauvais" 1

Même chose pour les horaires, si on a un couple de valeur genre 8:00 12:00 mais que la personne est absente en fait ce jour là, on saisit 0 et 0 (zéro et zéro)

Et si on veut ne pas faire apparaitre les 0 sur la feuille : Fichier/Options/Options avancées/Partie "Option d'affichage de la feuille de calcul", et décocher "Afficher un zéro dans les cellules qui ont une valeur nulle"

Ce qui permet de tenir les comptes parfaitement à jour.

P.
Merci P56,
Merci pour l'astuce. On est d'accord que cela a une influence uniquement sur ce fichier et pas sur mes autres fichiers où j'aurais besoin d'afficher le zéro.

Je rencontre un problème sur la ligne du 31 janvier où je mets bien mes valeurs (dans l'exemple les horaires) et si je change d'onglet mensuel cela ne me l'affiche plus. Du coup, pensant l'avoir oublié je le tape de nouveau et cela occasionne l'ajout d'une nouvelle ligne dans la feuille BDD et une somme de durée inexacte.

Ce problème persiste pour tous les mois ayant un 31.

Merci P56 de ton aide.
Virginie
 

Discussions similaires

Statistiques des forums

Discussions
312 338
Messages
2 087 398
Membres
103 537
dernier inscrit
alisafred974