Aide à la création d'un planning

Bonjour

Je me permet de poster cette demande d'aide car je n'ai pas vraiment trouvé ce que je cherchais à faire sur ce forum.

Je cherche à créer un planning pour m'aider dans la gestion de mes frais de garde.

J'ai créer un tableau à l'aide de tuto trouvé sur le net qui me permet de choisir un mois et une année, avec la vision des week end et jours fériés, mais j'ai un soucis pour que les données rentrées pour le mois de janvier s'effacent lorsque je choisi le mois de février et etc, tout en les conservant . Et je n'ai pas compris le code qui était donné avec le tuto pour les mois effacés les jours en plus du mois cela m'efface le tableau complet.

J'ai commencé par créer des macros pour remplir le tableau en fonction des types d'horaires de mon planning et de ma femme.

Puis j'ai une deuxième demande je ne sais pas si cela est possible. avoir une formule qui va analyser les cellules de la veille de mon épouse avec les cellules du jour meme de mon planning afin de savoir si je suis en M (donc de matin) et que épouse la veille est de N (donc de nuit) va mettre dans la case assadom et papi mami le résultat de 3 (qui signifie un chevauchement de 3 heures entre la nuit de ma femme et mon matin

Je débute complètement avec excel a part copier coller et =c4+c2 je prends tout pour m'élever dans mes connaissances

Merci de votre aide

Ps le fichier joins contient en premiere feuille le tableau de planning avec les listes déroulantes de choix de date, la seconde feuille les jours fériés pour la mise en forme conditionnelle et les macro des horaires de travail et en feuille 3 ma trame de planning et celle de mon épouse sur 10 semaines

24tableau-garde.xlsm (34.12 Ko)

Bonjour et bienvenue sur le forum

Un essai à tester. Te convient-il ?

Bye !

Bonsoir

Merci pour votre réponse

J'ai l'impression que cela ne fonctionne pas j'ai remplis le tableau mais rien ne se passe

Faut il activer une macro ?

Bonjour

didic974 a écrit :

Faut il activer une macro ?

Ah ! oui !

Si tu n'actives pas les macros, cela ne marchera pas.

Bye !

Bonsoir

Comment activer les macros car cela ne marche pas

ou bien je ne fais pas ce qu'il faut

Bonjour

didic974 a écrit :

Comment activer les macros

Voir tutoriel :

https://www.excel-pratique.com/fr/astuces_vba/activer_les_macros.php

Bonjour

C'est bien ce que j'avais fais mais la macro d'analyse des cellules ne fonctionne pas ou bien je ne le fais pas correctement

Merci de votre aide

gmb a écrit :

Bonjour et bienvenue sur le forum

Un essai à tester. Te convient-il ?

Bye !

Merci

j'ai essayé le tableau en regardan les histoires de macros qui ne fonctionnaient pas

Cela marche pour le matin et la nuit

Par contre en essaynt de rajouter des lignes d'analyses dans le code ca ne fonctionne pas

Quand je suis de J1 un jour et que ma femme est de nuit la veille j'aimerais qu'il affiche 2 dans le nombre d'heure de garde, j'ai copier le code pour Matin mais cela ne marche pas

et de meme pour quand je suis de soir et ma femme de nuit le meme jour mais ca ne marche pas

j'ai du me tromper dans la formulation des codes

Par contre a priori ca ne marchais pas au depart car j'avais créer des macros pour marquer rapidement les planning

Mais comment faire pour que mon planning et celui de ma femme se recopie tout seul dans les cases en suivant la trame qui se reproduit toutes les 10 semaines

Merci de votre aide

PS je joins le tableau avec mes codes pour voir ou j'ai fais une erreur

Bonjour

Je suis désolé mais je ne comprends pas tes explications.

didic974 a écrit :

en essaynt de rajouter des lignes d'analyses dans le code ca ne fonctionne pas

Qu'appelles-tu des lignes d'analyse ? qu'as-tu ajouté et où ?

Quand je suis de J1 un jour

: J1 ? Cela veut dire quoi ?
j'aimerais qu'il affiche 2 dans le nombre d'heure de garde

Je veux bien mais ma question est : "Dans quelle cellule" ?

j'ai copier le code pour Matin mais cela ne marche pas

Je ne vois pas où tu as copié quelque chose...

de meme pour quand je suis de soir et ma femme de nuit le meme jour mais ca ne marche pas

Et il faut faire quoi dans ce cas-là ?

comment faire pour que mon planning et celui de ma femme se recopie tout seul dans les cases en suivant la trame qui se reproduit toutes les 10 semaines

Là, je comprends mais on verra cela quand le reste sera réglé.

Si tu ne fais pas un effort pour être plus clair, je ne pourrai pas t'aider car je n'ai aucune disposition pour lire entre les lignes et je suis un peu dur de la comprenette !

Bye !

Bonjour

Oups désolé effectivement je n'ai été clair que dans ma tête.

Le J1 et le S sont des horaires de mon planning, le J1 signifie journée et le S soir.

Donc je vais etre plus clair du moins essayé j'espère.

J'ai rajouté en faisant copié collé les lignes dans le code VBA du tableau

je remet ici ce que j'ai fait

'On recherche les chevauchements Matin de ligne 8 et Nuit de ligne 10 (colonne précédente)

ElseIf Not Intersect(Target, Union(Range("B7:AF7"), Range("B9:AF9"))) Is Nothing Then

If Cells(7, Target.Column) = "M" And Cells(9, Target.Column - 1) = "N" Then

Cells(11, Target.Column) = "3"

Cells(13, Target.Column) = "3"

Else

Cells(11, Target.Column) = "0"

Cells(13, Target.Column) = "0"

End If

ElseIf Not Intersect(Target, Union(Range("B8:AF8"), Range("B10:AF10"))) Is Nothing Then

If Cells(8, Target.Column) = "M" And Cells(10, Target.Column - 1) = "N" Then

Cells(12, Target.Column) = "3"

Cells(14, Target.Column) = "3"

Else

Cells(12, Target.Column) = "0"

Cells(14, Target.Column) = "0"

End If

ElseIf Not Intersect(Target, Union(Range("B7:AF7"), Range("B9:AF9"))) Is Nothing Then

If Cells(7, Target.Column) = "J1" And Cells(9, Target.Column - 1) = "N" Then

Cells(11, Target.Column) = "2"

Cells(13, Target.Column) = "2"

Else

Cells(11, Target.Column) = "0"

Cells(13, Target.Column) = "0"

End If

If Cells(8, Target.Column) = "J1" And Cells(10, Target.Column - 1) = "N" Then

Cells(12, Target.Column) = "2"

Cells(14, Target.Column) = "2"

Else

Cells(12, Target.Column) = "0"

Cells(14, Target.Column) = "0"

End If

ElseIf Not Intersect(Target, Union(Range("B7:AF7"), Range("B9:AF9"))) Is Nothing Then

If Cells(7, Target.Column) = "S" And Cells(9, Target.Column) = "N" Then

Cells(11, Target.Column) = "2"

Cells(13, Target.Column) = "2"

Else

Cells(11, Target.Column) = "0"

Cells(13, Target.Column) = "0"

End If

End If

J'ai copié la ligne qui analyse les colonne et les lignes en fonction de l'intitulé M dans une colonne et N dans celle précédente sur une autre colonne, mais lorsque je fais remplis mon tableau la commande qui analyse les Horaire Matin et Nuit de la nuit précédente arche bien et recopie le nombre 3 dans les colonnes et lignes intitulé garde papi mami et assadommais pas pour les autres

J'aimerai que lorsque dans une colonne de la ligne 7 il y a un S (soir), et que dans la meme colonne mais de la ligne 9 il y a un N (nuit) dans les lignes 11 et 13 de la meme colonne il y ai le nombre 2 a s'affiché automatiquement lorsque je remplis les lignes

Et de meme pour le J mais quand le J1 apparrait dans la colonne suivant le N

Je mets une copie d'écran pour vous montrer ce que cela donne

capturexcl

J'espère avoir été un peu plus clair

Merci pour voter aide

Bonsoir

en relisant mon précédent post j'ai peur de ne pas avoir été assez clair je mets donc une capture d'écran et mon fichier en pièce jointe pour argumenter un peu plus mon propos

capturexcl2

J'ai mis des annotations dans la partie code VBA de la feuille 1

Merci de votre aide et bonne soirée

Bonjour

Nouvelle version à tester.

Bye !

Bonjour

Nouvelle version à tester.

Bye ![/quote]

Bonjour

Merci pour ce tableau c'est ce que je cherchais à faire.

Je me permets de redemander de l'aide car j'ai rajouté 2 lignes au tableau indiquant par le choix du mode de garde en mettant une croix dans une celliule

Je me suis servis de la formule pour analyser les lignes de travail cédric et de vanessa

'On recherche les Choix de garde entre les lignes 12 et 15

ElseIf Not Intersect(Target, Union(Range("B11:AF11"), Range("B12:AF12"), Range("B14:AF14"), Range("B15:AF15"))) Is Nothing Then

'Choix mode de garde ASSADOM

If Target.Row = 12 Then

If Cells(12, Target.Column) = "X" And Cells(11, Target.Column) = "3" And Cells(14, Target.Column) = "3" Then

Cells(13, Target.Column) = "3"

Cells(16, Target.Column) = "0"

ElseIf Cells(12, Target.Column) = "X" And Cells(11, Target.Column) = "2" And Cells(14, Target.Column) = "2" Then

Cells(13, Target.Column) = "2"

Cells(16, Target.Column) = "0"

Else

Cells(13, Target.Column) = "0"

Cells(16, Target.Column) = "2"

End If

'Choix mode de garde papi memi

ElseIf Target.Row = 15 Then

If Cells(14, Target.Column) = "3" And Cells(11, Target.Column) = "3" And Cells(15, Target.Column) = "X" Then

Cells(16, Target.Column) = "3"

Cells(13, Target.Column) = "0"

ElseIf Cells(14, Target.Column) = "2" And Cells(11, Target.Column) = "2" And Cells(15, Target.Column) = "X" Then

Cells(16, Target.Column) = "2"

Cells(13, Target.Column) = "0"

Else

Cells(16, Target.Column) = "0"

Cells(13, Target.Column) = "2"

End If

End If

Mais j'ai un soucis

quand je modifie une cellule de la ligne choix mode de garde par exemple assadom ca ne marche pas correctement

En plus quand je change de mois la ligne 15 et 16 ne se recoppie pas correctement et j'ai l'impression que ces lignes ne se mettent pas en mémoire et efface les autres

Pourriez vous controler mon code VBA afin de savoir si je n'ai pas commis une erreur en reodifiant le tableau et les code VBA de mise en mémoire

Merci de votre aide

J'ai mis une copie d'écran

j'ai remis le fichier

encore merci de votre aide

capturexcl3

Bonjour

didic974 a écrit :

Pourriez vous controler mon code VBA afin de savoir si je n'ai pas commis une erreur en reodifiant le tableau et les code VBA de mise en mémoire

J’ai regardé , mais sans aller jusqu’à tout tester : le principe est bon.

J’ai néanmoins remarqué que tu avais supprimé la partie qui mettait automatiquement le tour de service de Cédric et de Vanessa lors de la création d’un nouveau mois : dommage !

Je pensais au contraire qu’il était regrettable qu’il n’y ait pas de tour théorique pour Absalom. On aurait pu le mettre aussi !

quand je modifie une cellule de la ligne choix mode de garde par exemple assadom ca ne marche pas correctement

Il te faudrait être plus précis : décris moi un cas précis en disant ce que tu mets dans quelle cellule, ce que tu obtiens et ce que tu voudrais obtenir.

En plus quand je change de mois la ligne 15 et 16 ne se recoppie pas correctement et j'ai l'impression que ces lignes ne se mettent pas en mémoire et efface les autres

Tu as modifié la taille des tableaux que tu mets en archive puisque tu as ajouté 2 lignes. Mais tu as gardé sur la feuille Archives des tableaux qui ont 2 lignes de moins.

Il te faut donc réinitialiser ta feuille Archives en l’effaçant complètement.

Pour la démasquer :

• Cliquer sur’’ Format’’ dans le bandeau, pavé : ‘’Cellules’’

• Choisir : ‘’Visibilité – Masquer & Afficher’’

• Choisir : Afficher la feuille

• Cliquer sur ‘’Archives’’

Si tu fais ça, cela devrait mieux fonctionner.

Bye !

gmb a écrit :

Bonjour

didic974 a écrit :

Pourriez vous controler mon code VBA afin de savoir si je n'ai pas commis une erreur en reodifiant le tableau et les code VBA de mise en mémoire

J’ai regardé , mais sans aller jusqu’à tout tester : le principe est bon.

J’ai néanmoins remarqué que tu avais supprimé la partie qui mettait automatiquement le tour de service de Cédric et de Vanessa lors de la création d’un nouveau mois : dommage !

Je pensais au contraire qu’il était regrettable qu’il n’y ait pas de tour théorique pour Absalom. On aurait pu le mettre aussi !

Je ne comprends pas le tour de service que j'aurais supprimé je ne voix pas a quoi cela correspond sur la partie code vba

gmb a écrit :

quand je modifie une cellule de la ligne choix mode de garde par exemple assadom ca ne marche pas correctement

Il te faudrait être plus précis : décris moi un cas précis en disant ce que tu mets dans quelle cellule, ce que tu obtiens et ce que tu voudrais obtenir.

Quand le tableau se remplis automatiquement avec la trame de planning l'analyse ne se lance pas automatiquement sur l'ensemble du tableau il faut que je retape a chaque fois le planning.

De plus quand je choisi par exemple au mois de janvier 2016 la colonne G dans un premier temps je met une croix en G12 mon analyse fonctionne, le 2 reste en cellule G13 et s'efface en cellule G16, mais si j'efface la croix le 2 s'efface de G13 et réapparait en G16 alors qu'il devrait aussi rester en en G13.

J'ai l'impression que l'analyse de la fonction ne permet pas de retourner automatiquement en arrière.

J'ai remarqué que cela fait la meme chose si à la place de X je met G par exemple en ligne 13 ca s'efface et met 0 et met soit 2 ou 3 en ligne 16.

Me suis je trompé quelque part?

Merci encore de voter aide

Bonjour

didic974 a écrit :

Je ne comprends pas le tour de service que j'aurais supprimé je ne voix pas a quoi cela correspond sur la partie code vba

Ta version 3 :
...
  'On masque les colonnes du mois suivant
        nbj = Day(DateSerial(Year(Range("B6")), Month(Range("B6")) + 1, 1) - 1)
        Columns("AC:AF").EntireColumn.Hidden = False
        Range(Columns(nbj + 2), Columns(33)).EntireColumn.Hidden = True

    'On recherche les chevauchements Théoriques Matin de ligne 8 et Nuit de ligne 10
...

Ma version 2 qui recopiait le tour de service théorique (et que tu appelles ''Trame'' ?) :

        'On masque les colonnes du mois suivant
        nbj = Day(DateSerial(Year(Range("B6")), Month(Range("B6")) + 1, 1) - 1)
        Columns("AC:AF").EntireColumn.Hidden = False
        Range(Columns(nbj + 2), Columns(33)).EntireColumn.Hidden = True

'On recopie le cycle des postes à partir de la date demandée et de la trame
        With Sheets("Trame de planning")
            col = (Range("B6") - .Range("C3")) Mod 70 + 3
            'Cédric théorique
            .Range(.Cells(2, col), .Cells(2, col + 30)).Copy
            Range("B7").PasteSpecial xlPasteValues
            'Vanessa théorique
            .Range(.Cells(4, col), .Cells(4, col + 30)).Copy
            Range("B9").PasteSpecial xlPasteValues
        End With

    'On recherche les chevauchements Théoriques Matin de ligne 8 et Nuit de ligne 10
didic974 a écrit :

Quand le tableau se remplis automatiquement avec la trame de planning l'analyse ne se lance pas automatiquement sur l'ensemble du tableau il faut que je retape a chaque fois le planning.

Forcément, il n'y a plus le code qui assure la mise en place du tour de service (ou de la trame)

Remets le et cela devrait rentrer dans l'ordre.

Remarque : cette mise en place se fait chaque fois que le mois ou l'année sont modifiés.

Au cas, je te joins ma version 4 :

OK ?

Bye !

Merci de ta réponse

J'ai replacé la totalité du code que tu as remis dans le post précédent

Mais cela ne fonctionne pas mieux

En effet si je me met en janvier 2017 les lignes ASSADOM théorique et papi mami théorique ne se remplissent pas automatiquement

Je te joins ma version 4 afin que tu puisse voir si cela viens du fait que j'ai mal recopier ou mal intégrer des choses

Merci de ton aide

didic974 a écrit :

En effet si je me met en janvier 2017 les lignes ASSADOM théorique et papi mami théorique ne se remplissent pas automatiquement

Mais que voudrais-tu qu'il y ait dans ces lignes ?

Il n'y a pas pour ces deux items de tours théoriques sur la feuille ''Trame planning" comme pour Cédric ou Vanessa ...

A te relire

gmb a écrit :
didic974 a écrit :

En effet si je me met en janvier 2017 les lignes ASSADOM théorique et papi mami théorique ne se remplissent pas automatiquement

Mais que voudrais-tu qu'il y ait dans ces lignes ?

Il n'y a pas pour ces deux items de tours théoriques sur la feuille ''Trame planning" comme pour Cédric ou Vanessa ...

A te relire

Bonjour

Ben en fait j'aimerai qu'elle se remplisse automatiquement grace a la macro qui analyse et qui note dans les cellules de la lignes 11 et 14 soit 0 soit 2 soit 3 en fonction des plannings de cédric et vanessa en fonction du tour théorique de cédric et vanessa

Ce qui correspond en fait à ce qui est noté dans le bas du code vba mais quand je change d'année et de mois si le tableau n'est pas remplis le remplissage des lignes 11 et 14 ne se fait que si je retape les lettres correspondant aux horaires des lignes 7 et 9

Merci de votre aide

Alors essaie cette nouvelle version :

Bye !

Rechercher des sujets similaires à "aide creation planning"