Tableau d'heures de pointages sur plusieurs années-Résolu-Merci à Dormeur74

sevenjah

XLDnaute Nouveau
Bonjour à tous,

Voici mon problème, j'ai un tableau pour les heures de pointages inspiré d'un existant prit sur le net.
Mon problème, c'est que je n'arrive pas à trouver la formule qui me permettra de rentrer mes heures journalières et que c'elles-ci restent affiché uniquement avec le bon mois et année concerné !

Le plus simple est que je vous joints le fichier et vous essayé et vous comprendrez mon problème.... Enfin j'espère :D

Dans l'attente, meilleures salutations.
 

Pièces jointes

  • Gabarit heures pointages.xls
    88 KB · Affichages: 124
  • Gabarit heures pointages.xls
    88 KB · Affichages: 105
  • Gabarit heures pointages.xls
    88 KB · Affichages: 100
Dernière édition:

Dormeur74

XLDnaute Occasionnel
Re : Tableau d'heures de pointages sur plusieurs années

Normal. On ne mémorise que le mois courant.
Ce tableau contient 2 parties :
- les colonnes A à F sont un calendrier très sommaire qui calcule plus ou moins bien le numéro de la semaine (au passage, ce dernier n'est pas aux normes ISO). Les autres colonnes (G:AF) sont statiques. Si tu entres dans la cellule G10 3 heures du matin, tu peux changer de mois et d'année, tu auras toujours 3h du matin dans la cellule G10.

Autrement dit. On est en novembre 2012, tous les horaires entrés dans les colonnes G:AF en novembre seront sauvegardées avec le fichier. Mais le 1er décembre, il faudra sauvegarder le fichier de novembre et tout remettre à zéro. C'est très lourd à manier ensuite lorsqu'on veut procéder à des fusions, à des synthèses, à des stats et à des rapports.
 

sevenjah

XLDnaute Nouveau
Re : Tableau d'heures de pointages sur plusieurs années

Salut Dormeur74,
Merci pour ta réponse qui n'en ai pas vraiment une d'ailleurs :rolleyes: Enfin... Tout d'abord tu me parles de normes ISO pour le tableau késako? Ne savait même pas qu'il y en avait pour un tableau Excel, si tu as un exemple, afin que j'aie me coucher moins bête ce soir, c'est avec plaisir.
Question:
-Pourquoi plus ou moins bien les numéros de semaines, as-tu vu des erreurs?
-Dans la deuxième partie de ta réponse tu as très bien cerné mon problème, est-il possible de le rendre mobile ?

Merci d'avance de ton retour, meilleures salutations.
 

Dormeur74

XLDnaute Occasionnel
Re : Tableau d'heures de pointages sur plusieurs années

Ma réponse n'en est pas une ? Je vais essayer de te démontrer le contraire très calmement.

Tout d'abord tu me parles de normes ISO pour le tableau késako?

Je ne te parlais pas de normes ISO pour ce tableau, mais pour la fonction NO.SEMAINE() utilisée dans ce tableau et m'en explique : les Américains, qui sont les auteurs d'Excel, ne calculent pas les numéros de semaine comme nous. Dans notre standard d'horodatation (ISO 8601), la première semaine de l'année ISO est celle du premier jeudi de janvier. Pas chez eux. En conséquence, tu peux remplacer la fonction (US) =NO.SEMAINE(E7;1) par l'EUropéenne =ENT(MOD(ENT((E7)/7)+0,6;52+5/28))+1
Passons, le n° de semaine est là pour faire beau, il ne sert strictement à rien dans la gestion des gens qui bossent.

Possibilité d'adapter ce travail à ton besoin : un oui franc et massif. Mais il en est des programmes trouvés sur la toile comme des toutes-cousues chez le buraliste et du prêt-à-porter des grandes surfaces. Mieux vaut tout reprendre à zéro. Je viens de le faire sur un fil nommé "Planning évolutif". Tu verras que c'est faisable en calendrier perpétuel.
 

sevenjah

XLDnaute Nouveau
Re : Tableau d'heures de pointages sur plusieurs années

Ok, merci pour cette explication qui est déjà plus parlante pour moi en tout cas :D
Concernant le numéro de semaine, effectivement ce n'est pas obligatoire, mais comme dans mon corps de métier nous travaillons encore beaucoup en numéro de semaine, c'était juste un plus.
Ce tableau est uniquement destiné à moi et non pas pour une application professionnel ou gestion d'horaire de collaborateur.
C'est également un moyen de me perfectionner.
Je vais aller voir "planning évolutif" et vous reviens.

Pour la formule européenne, ça ne fonctionne pas chez moi tu as mis la cellule en quoi ? Nombre, Date heures?
Meilleures salutations.
 

Dormeur74

XLDnaute Occasionnel
Re : Tableau d'heures de pointages sur plusieurs années

Je n'ai pas touché au format des cellules, mais me suis contenté de changer la formule à appliquer dans la colonne F (Excel 2003).
 

Pièces jointes

  • Gabarit heures pointages.xls
    89 KB · Affichages: 89
  • Gabarit heures pointages.xls
    89 KB · Affichages: 83
  • Gabarit heures pointages.xls
    89 KB · Affichages: 96

sevenjah

XLDnaute Nouveau
Re : Tableau d'heures de pointages sur plusieurs années

Merci pour la modification, mais si je prends mon exemple de tout à l'heure sur janvier 2000 pour le premier il me met toujours semaine 1 au lieu de 52?
lequel des planning évolutif dois-je regarder, STP?
Merci de votre retour, @+
 

Dormeur74

XLDnaute Occasionnel
Re : Tableau d'heures de pointages sur plusieurs années

Ne te casse pas la tête avec ce numéro de semaine que tu utilises juste à titre informatif et évite le recours (lorsque tu le peux) aux fonctions issues de l'utilitaire d'analyse. Beaucoup de choses intéressantes ont été écrites ici sur ce sujet.

Le planning dont je te parle se trouve ici et la solution proposée là.

Son principe est simple : tu choisis l'année du planning et il génère le calendrier correspondant. Tu as donc un fichier par an.
 

Dormeur74

XLDnaute Occasionnel
Re : Tableau d'heures de pointages sur plusieurs années

Tu peux t'inspirer aussi de ceci. Ce sera probablement plus rapide.
Je précise qu'en le faisant sous Access, tu aurais l'avantage des requêtes SQL qui sont infiniment plus souples en post-traitement.
 

sevenjah

XLDnaute Nouveau
Re : Tableau d'heures de pointages sur plusieurs années

Salut Dormeur74,
Un grand merci pour le fichier qui me plait beaucoup et fonctionne parfaitement.
Pourrais-tu m'en dire plus sur les changements apportés et une explication de ta macro, STP, car à ce niveau là je suis une bille...
En tout cas beau boulot, meilleures salutations.
 

Dormeur74

XLDnaute Occasionnel
Re : Tableau d'heures de pointages sur plusieurs années

Bonjour sevenjah,
Je ne suis pas certain de t'avoir fait télécharger le bon fichier. Dans le doute procède à un nouveau téléchargement.

Je t'explique comment ça marche.
- chaque mois est indépendant des autres. Prenons le mois de mars.
- en B2 tu as cette formule : ="01/03/" & Générateur!B2. Si on génère le calendrier 2015, on lira 01/03/2015 dans cette cellule.
- les jours de la semaine (Lun, Mar,...,Dim) et les numéros de semaine sont calculés à partir du contenu de la cellule B2.
- comme tu pourras le constater, le 1er janvier 2012 est un dimanche et appartient à la dernière semaine de l'année 2011 (52e). De même, le 31 décembre 2012 correspond au 1er jour de la 1ère semaine de l'année 2013. Il existe une formule moins limitée pour le calcul des semaines (méthode de Laurent Longre, Daniel Maher et Christophe Pejout) mais celle que j'ai utilisée est largement satisfaisante.

Passons au code VBA (génération d'un nouveau calendrier). J'ai renseigné le code. En fait il est très simple.

Code:
Private Sub Valider_Click()
    ' On recopie en B2 l'année sélectionnée par l'utilisateur
    Sheets("Générateur").Range("B2") = CB_Annee.List(CB_Annee.ListIndex)
    
    ' On donne le focus à la feuille du mois de février
    Sheets("FEV").Select
    If IsDate("29/02/" & CB_Annee.List(CB_Annee.ListIndex)) Then
        ' Si le 29/02/20xx est une date normale, il s'agit d'une année bissextile
        ' on affiche les 3 lignes du 29e jour
        Rows(89).EntireRow.Hidden = False
        Rows(90).EntireRow.Hidden = False
        Rows(91).EntireRow.Hidden = False
    Else
        ' Si le système ne reconnaît pas la date du 29/02/20xx, il s'agit d'une année
        ' non bissextile, on masque les 3 lignes du 29e jour
        Rows(89).EntireRow.Hidden = True
        Rows(90).EntireRow.Hidden = True
        Rows(91).EntireRow.Hidden = True
    End If
    
    ' On sauvegarde le nouveau calendrier
    With ActiveWorkbook
        .SaveAs Filename:=ThisWorkbook.Path & "\" & "pointage" & Sheets("Générateur").Range("B2") & ".xls"
        '.Close ' la fermeture du nouveau classeur est optionnelle
    End With
    
    MsgBox "Votre fichier a été sauvegardé sour le nom " & ThisWorkbook.Path & "\" & "pointage" & Sheets("Générateur").Range("B2") & ".xls", vbInformation + vbOKOnly, "Sauvegarde automatique"
    
    Unload Me
End Sub
 

sevenjah

XLDnaute Nouveau
Re : Tableau d'heures de pointages sur plusieurs années

Salut Dormeur74,
Un grand merci à toi pour le temps passé et de tes réponses claires.
Le tableau me va parfaitement ainsi.
Concernant le code, j'ai compris, mais ne suis pas sur que je pourrai en refaire un identique ne connaissant rien au VBA... Malheureusement.

Te souhaite bonne continuation et une excellente journée, meilleures salutations.
 

Discussions similaires

Statistiques des forums

Discussions
312 165
Messages
2 085 882
Membres
103 013
dernier inscrit
cicro