Planning de garde pompier

Bonjour,

154testsebforum.xlsx (15.62 Ko)

Je reviens sur ce forum puisque la dernière fois j'ai été très très bien renseigné et aidé.

Cette fois ci, je viens avec un tout nouveau projet. Je suis Sapeur Pompier Volontaire et on ma demandé de mettre au gout d'aujourd'hui notre manière de planifier nos présence ou non à nos gardes. Je vous explique, nous somme une quarantaine divisé en 4 bordées. Dans chaque bordées il y a 10 agents et chaque agent à des aptitudes comme par exemple: Chef d'agrès incendie, Equipier Secoure routier… ce qui influe sur notre planning puisque dans chaque engin il y a des postes qui nécessite tel ou tel aptitude. De plus, les astreinte quand nous somme de garde vont de 19h à 7h le lendemain matin en semaine. Nos gardes s'étalent sur une semaine et uniquement la nuit les jours de semaine. A l'heure d'aujourd'hui nous avons 4 tableaux Velléda avec dans chaque ligne les noms des différents agents et dans les colonnes les jours divisé heure par heure. Imaginons que je sois de garde cette nuit, je vais noté sur le tableau ma présence de 19h à 5h du matin (car de 5h à 7h des motifs familiaux m'empêche d'assurer ma garde) Je dois donc trouver un remplaçant sur le créneau 5h-7h afin d'assurer que l'engin dans lequel je suis affecté est remplit sur la tranche horaire complète (19h 7h). Voila en gros comment fonctionne notre planification.

Maintenant, venons en au fichier Excel que j'ai insérer en pièce jointe.

J'ai créé 3 feuilles, "planning" "Agents"(les noms sont évidement pas les vrais) et "Fonctions"

Ce que je souhaiterais faire dans la feuille "planning" c'est que dans chaque case de chaque colonnes "fonctions1" "fonctions2"et "fonctions3" un menu apparaissent avec la liste de toutes les fonctions de la feuille "fonction" et que dans chaque case de la colonne "nom/prénom" apparaisse un menu déroulant avec le nom de chaque agent de la feuille "agent". Tout cela afin que le chef de garde puisse attribuer le nom d'un agent a une ou plusieurs fonctions différentes. (Par exemple: Robert Dupont pour cette semaine de garde sera Equiper Secours Routier(fonction1) mais aussi Equiper Fourgon(fonction2) et Conducteur VTU (fonction3) comme ça si Robert ne peux pas assurer sa garde sur un créneau, il sait qu'il doit trouver quelqu'un pour le remplacer qui a les mêmes fonctions opérationnelles que lui.

Maintenant que Robert connait ses différentes fonctions, il va remplir les tranches horaires sur lesquels il peut être disponible par exemple vendredi de 19h jusqu'à samedi 3h (j'imagine peut être en mettant un code couleur dans chaque case ou il peut-être présent.) et ensuite Jacky qui a les mêmes fonctions que lui et qui est disponible pourra, lui, noter sa présence en indiquant dans chaque case horaire son nom afin que le chef de garde sache que la nuit est entièrement occupé.

Voila voila je pense avoir fait le tour. J'espère que ce pavé que j'ai écrit semble assez claire et sinon n'hésitez pas à me le faire savoir. Merci d'avance d'avoir lu

Bonjour

Quelques questions

1° les agents peuvent ils assumer toutes les fonctions?

2° tu mets 11 lignes avec 3 fonctions alors que sur la feuille fonctions on a 7 critères avec jusqu'à 6 agents…

Ne serai t'il pas plus intéressant d'avoir sur la feuille agents les différentes aptitudes?

A+ François

Bonjour

Un exemple tu n'auras plus qu'a faire un copier/coller pour les autres jours

Bonsoir Sébastien

Il est résolu ton problème?

Bonjour,

Désolé des réponses tardives mais je n'étais pas dispo.

Premièrement merci pour ce travail. J'ai compris le principe des "validations de données" dans l'onglet "données". Merci Joco

Deuxièmement, pour répondre à Fanfan, non tous les agents ne peuvent pas assumer toutes les fonctions mais ce n'est pas important puisque c'est au rôle du chef de garde d'attribuer les rôles à chaque agents. et pour l'autre question peu importe les 11 lignes c'est si j'ai besoin de rajouter du personnel de manière temporaire.

Je vous joint mon fichier en PJ, parce que j'ai une autre question.

Est-il possible sans Macro dans la tranche horaire d'effectuer via un simple clic le remplissage d'une case en vert et via un clic droit le remplissage en rouge pour donner les dispo de chacun.

Merci

Bonjour

Une question pourquoi une cellule en vert ou en rouge?

Parce quand tu es dispo par exemple de 19h à 3h du matin , tu mets toutes les cellules de cette tranche horaire en vert et le reste en rouge pour dire que tu n'est pas dispo de 03h à 07h

Re bonjour

Une solution ci-dessous

Tu colores par avance toutes tes cellules en rouge

tu double clic sur la cellule que tu souhaites mettre en vert

Crdlt

Merci beaucoup pour ça. Ca correspond à mes attente.

Seul bémol, je peux colorer les cases d'après le code que tu as mis de la lettre F à Q. Et dans mon planning j'ai le samedi et le dimanche qui vont de F à AC. J'ai essaye de modifié en mettant une première ligne comme ceci:

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Application.Intersect(Target, Range("$F$6:$Q$16")) Is Nothing Then
    coul = Target.Interior.ColorIndex
    Cancel = True
    Select Case coul
    Case 2
    Target.Interior.ColorIndex = 4   ' après blanc --> vert
    Case 4
    Target.Interior.ColorIndex = 3   ' après vert --> rouge
    Case 4
    Target.Interior.ColorIndex = 2   ' après vert boucle sur blanc
    Case Else
    Target.Interior.ColorIndex = 2   ' Après autre couleur  --> blanc
    End Select
End If
End Sub

Donc j'ai modifié la valeur "Target". J'ai ensuite recopié ce code pour faire

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Application.Intersect(Target, Range("$F$6:$Q$16")) Is Nothing Then
    coul = Target.Interior.ColorIndex
    Cancel = True
    Select Case coul
    Case 2
    Target.Interior.ColorIndex = 4   ' après blanc --> vert
    Case 4
    Target.Interior.ColorIndex = 3   ' après vert --> rouge
    Case 4
    Target.Interior.ColorIndex = 2   ' après vert boucle sur blanc
    Case Else
    Target.Interior.ColorIndex = 2   ' Après autre couleur  --> blanc
    End Select
End If
End Sub

_____________________________________________________________________________

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Application.Intersect(Target, Range("$F$19:$AC$29")) Is Nothing Then
    coul = Target.Interior.ColorIndex
    Cancel = True
    Select Case coul
    Case 2
    Target.Interior.ColorIndex = 4   ' après blanc --> vert
    Case 4
    Target.Interior.ColorIndex = 3   ' après vert --> rouge
    Case 4
    Target.Interior.ColorIndex = 2   ' après vert boucle sur blanc
    Case Else
    Target.Interior.ColorIndex = 2   ' Après autre couleur  --> blanc
    End Select
End If
End Sub

Evidemment j'ai une erreur.. puisque j'ai 2 commandes qui intéragisse avec le double clique donc j'imagine que c'est ça qui pose problème. Maintenant ma question est: comment faire en sorte de pouvoir colorer avec un double clique UNIQUEMENT les cases qui vont de :

-F6 à Q16

-F19 à AC29

-F32 à AC42

-F45 à Q55

-F58 à Q68

-F71 à Q81

-F84 à Q94

et aucune autre stp? merci

Regarde si cela te convient

Toujours pareil

Non ce n'est pas ça. Dans le fichier que je t'ai envoyé j'avais moddifié ton code pour avoir les cases blanches et que lorsque je fais un double clique ça passe en verre et lorsque je refait un double clique ca passe en rouge. Le dernier truc qui me chagrine du coup c'est que je ne veux pas que les cases après 7h les vendredi, lundi, mardi,mercredi et jeudi soit elles aussi comprisent dans le changement de couleur en double cliquand. Je souhaiterais qu'elle reste des cases "normale"

A tester

Au top!! merci, j'aurais une dernière quesiton surement mais je verrais ça demain. Bonne soiréé et encore merci

Bonsoir

C'est quand tu veux

Tu peux passer le sujet en résolu

A+

Rechercher des sujets similaires à "planning garde pompier"