Amélioration d'un calendrier + calcul automatique de prime

myjidu35

XLDnaute Junior
Bonjour,

Je viens de réaliser un planning annuel qui me conviens bien cependant je voudrais apporter quelques améliorations mais je vois pas comment faire:

1)-J'aurais souhaité que les jours fériés soient grisés, comment le samedi et le dimanche.

2)-Quand j'effectue ma recherche je souhaiterais voir tout ce qu'il y a à partir de l'année et du mois donné en AW2 et AW3 (si je donne 10/10/2013 je souhaite voir le calendrier à partir de cette date)

3)-Je souhaiterais un bouton aperçu qui me permette d'imprimer les trois premiers calendriers en fonction de la date donnée en 2)


De plus je souhaiterais dans l'onglet "Prime astreinte" calculer automatiquement les primes par mois des différentes personnes.
L'astreinte est représenté par un A dans l'onglet "planning annuel".
Ce que je voudrais c'est sélectionner le mois et l'année dans l'onglet "Prime astreinte" et qu'automatiquement le tableau soit renseigner par rapport au nombre d'astreinte (en jour) que la personne a effectuée dans le mois.

Merci d'avance

Jimmy
 

Pièces jointes

  • Planning SLR.xlsm
    267.5 KB · Affichages: 83

CHALET53

XLDnaute Barbatruc
Re : Amélioration d'un calendrier + calcul automatique de prime

Bonsoir,

Un essai pour les jours fériés

Pour tester : regarde le programme Sub jours_fériés
Modifie colorindex et met la valeur à 16 pour le test

le programme est long. s'il ne doit tourner qu'une seule fois, c'est peut-être acceptable

a+
 

Pièces jointes

  • Myjidu Planning SLR.xlsm
    269.9 KB · Affichages: 63
  • Myjidu Planning SLR.xlsm
    269.9 KB · Affichages: 65
  • Myjidu Planning SLR.xlsm
    269.9 KB · Affichages: 65

CHALET53

XLDnaute Barbatruc
Re : Amélioration d'un calendrier + calcul automatique de prime

Bonjour,

Range("joursemaine") : cellule AZ1 en lien avec BB1 : permet de détecter le 2ème jour de WEEK END en dehors du dimanche (ici Samedi soit 6 , ce pourrait être lundi soit 1)
Plage des jours fériés : feries (BC8 :BC21)
Le programme alimente l'année en BC1 à partir de la date de la colonne traitée (exemple, Année de la cellule E6) afin de traiter les jours fériés correspondant à cette année là

Une version peut-être un peu plus rapide
a+
 

Pièces jointes

  • Myjidu Planning SLR.xlsm
    270.8 KB · Affichages: 59
  • Myjidu Planning SLR.xlsm
    270.8 KB · Affichages: 59
  • Myjidu Planning SLR.xlsm
    270.8 KB · Affichages: 52

myjidu35

XLDnaute Junior
Re : Amélioration d'un calendrier + calcul automatique de prime

Cela fonctionne parfaitement, et plus rapide en plus.

Merci

MAJ de la liste:

2)-Quand j'effectue ma recherche je souhaiterais voir tout ce qu'il y a à partir de l'année et du mois donné en AW2 et AW3 (si je donne 10/10/2013 je souhaite voir le calendrier à partir de cette date)

3)-Je souhaiterais un bouton aperçu qui me permette d'imprimer les trois premiers calendriers en fonction de la date donnée en 2)


De plus je souhaiterais dans l'onglet "Prime astreinte" calculer automatiquement les primes par mois des différentes personnes.
L'astreinte est représenté par un A dans l'onglet "planning annuel".
Ce que je voudrais c'est sélectionner le mois et l'année dans l'onglet "Prime astreinte" et qu'automatiquement le tableau soit renseigner par rapport au nombre d'astreinte (en jour) que la personne a effectuée dans le mois.

Merci d'avance

Jimmy
 

CHALET53

XLDnaute Barbatruc
Re : Amélioration d'un calendrier + calcul automatique de prime

re,

Je peux m'attaquer aux primes d'astreinte (pas avant ce soir). Il manque des infos :
sur la feuille Prime d'astreinte, il faut une zone pour saisir le nom, je suppose
Dans la feuille Planning annuel, je suppose que les noms sont dans la colonne D
 

myjidu35

XLDnaute Junior
Re : Amélioration d'un calendrier + calcul automatique de prime

Salut, et merci pour le travail que tu as déjà effectué.

Dans le planning les noms sont bien dans la colonne D.
Dans l'onglet prime astreinte c'est la colonne A qui doit contenir les noms.

C'est en changeant le mois et l'année en I2 et I3 que la valeur des primes doit changer.

Merci

Jimmy
 

CHALET53

XLDnaute Barbatruc
Re : Amélioration d'un calendrier + calcul automatique de prime

J'avais compris que tu voulais pour un nom donné les primes avec les dates dans la colonne A
tu veux plutôt pour un mois donné tous les individus concernés par une prime d'astreinte en colonne A avec, par type de jours, le cumul des astreintes (le total étant calculé dans la colonne E
Comment sont renseignés les noms dans la colonne D de la feuille Planning ?
toujours les mêmes noms dans la même séquence dans chaque bloc (un nom toujours en même rang dans tous les blocs)
Ou au fil des besoins dans chaque bloc : un même nom peut se retrouver en ligne différente dans un bloc ou ne pas s'y trouver si sa présence n'est pas constatée)
 

myjidu35

XLDnaute Junior
Re : Amélioration d'un calendrier + calcul automatique de prime

Salut,

Les noms sont renseignés manuellement. Ce sont toujours les mêmes et suivent le même ordre.
ex:
Mr1
Mr2
Mr3
Mr4
...

Mr1
Mr2
Mr3
Mr4
...

Mr1
Mr2
Mr3
Mr4
...


Je viens de ressayer ton programme jours feriés sur un autre fichier mais cela ne marche pas comme je veux.
Aurais tu une idée du soucis?

Merci
 

Pièces jointes

  • Planning encadrement1.xlsm
    136.7 KB · Affichages: 48

CHALET53

XLDnaute Barbatruc
Re : Amélioration d'un calendrier + calcul automatique de prime

Pour ton dernier fichier, qu'est ce qui ne fonctionne pas exactement ?

A part cela : Set plage = Range("F" & i & ":AQ" & i)

Alors que la première colonne semble être B


PS : Lactalys (le siège est à Laval ? j'y habite)
 
Dernière édition:

CHALET53

XLDnaute Barbatruc
Re : Amélioration d'un calendrier + calcul automatique de prime

Re,

Pour les astreintes :
Prime individu : par personne sur un mois donné
Prime astreinte : les individus d'un mois (travaille avec une feuille intermédiaire Feuil1 et regroupement dans la feuille Prime astreinte par des formules (colonne B à D)

J'ai mis des noms bidons en colonne D (et notamment en Octobre 2017)
 

Pièces jointes

  • Myjidu Planning SLR ter.xlsm
    290.8 KB · Affichages: 59
  • Myjidu Planning SLR ter.xlsm
    290.8 KB · Affichages: 60
  • Myjidu Planning SLR ter.xlsm
    290.8 KB · Affichages: 60

myjidu35

XLDnaute Junior
Re : Amélioration d'un calendrier + calcul automatique de prime

Pour ton dernier fichier, qu'est ce qui ne fonctionne pas exactement ?

A part cela : Set plage = Range("F" & i & ":AQ" & i)

Alors que la première colonne semble être B


PS : Lactalys (le siège est à Laval ? j'y habite)

La première ligne des calendriers et la seconde fonctionnent bien (en 2013).
C'est après que ça déconne car les autres lignes copient la mise en forme de la deuxième ligne des calendriers

Oui Lactalis, mais sur le site de Retiers, pas très loin de Laval
 

myjidu35

XLDnaute Junior
Re : Amélioration d'un calendrier + calcul automatique de prime

Re,

Pour les astreintes :
Prime individu : par personne sur un mois donné
Prime astreinte : les individus d'un mois (travaille avec une feuille intermédiaire Feuil1 et regroupement dans la feuille Prime astreinte par des formules (colonne B à D)

J'ai mis des noms bidons en colonne D (et notamment en Octobre 2017)

Je n'ai pas forcément besoin de la feuille prime individu.
Est-il possible de faire sans la Feuil1 et de travailler seulement avec la feuille Prime Astreinte.
Cela facilitera l'utilisation des utilisateurs
 

CHALET53

XLDnaute Barbatruc
Re : Amélioration d'un calendrier + calcul automatique de prime

Pour ton fichier du post 9, hormis la cellule B6, il n'y a plus de formules dans toutes les lignes 6, 16 ,26, ....
En conséquence, par exemple, entre les dates (ligne 27) et les jours ligne 26, on n'a pas la même date
Il faut recopier la formule en B6 sur toute la ligne et ensuite recopier toute la ligne 6 sur les lignes 16, 26 , ....
Supprime le nom de cellule a (qui fait doublon avec le nom An)
Il te manque une partie du programme (la partie en gras).

Sub jours_fériés()
Application.ScreenUpdating = False

Sheets("Feuil1").Activate
For i = 6 To 107 Step 10
Set plage = Range("B" & i & ":AQ" & i)
For Each cel In plage
Range("An") = Year(cel)

a = Weekday(cel, 2)

If Weekday(cel, 2) = 7 Or _
Weekday(cel, 2) = Range("AZ1").Value Then

Range(Cells(i, cel.Column), Cells(i + 7, cel.Column)).Select
With Selection.Interior
.ColorIndex = 15
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
End With
GoTo suite
Else
Range(Cells(i, cel.Column), Cells(i + 7, cel.Column)).Select
With Selection.Interior
.ColorIndex = xlNone
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
End With

End If
'Stop
For Each cl In Range("BC8:BC20")
If cl = cel Then
Range(Cells(i, cel.Column), Cells(i + 7, cel.Column)).Select
With Selection.Interior
.ColorIndex = 15
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
End With
End If
Next
suite:
Next
' Stop


Next

End Sub
 

Discussions similaires

Statistiques des forums

Discussions
312 764
Messages
2 091 867
Membres
105 084
dernier inscrit
lca.pertus