IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Access Discussion :

rendre invisible les week end et les jours feriés sur un calendrier


Sujet :

Access

  1. #1
    Membre à l'essai
    Inscrit en
    Octobre 2006
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 26
    Points : 17
    Points
    17
    Par défaut rendre invisible les week end et les jours feriés sur un calendrier
    bonjour tout le monde
    sur un calendrier crée sous un formulaire via l'Activex calendrier, je cherche à rendre invisible (ou simplement empécher la possibilité de choisir )les jours de week end et des jours fériés .

    voilà mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    Function EstFerie(ByVal QuelleDate As Date) As Boolean
    Dim anneeDate As Integer
    Dim joursFeries(1 To 8) As Date
    Dim I As Integer
    Dim jourouvré As Date
      anneeDate = Year(QuelleDate)
     
      joursFeries(1) = DateSerial(anneeDate, 1, 1)
      joursFeries(2) = DateSerial(anneeDate, 5, 1)
      joursFeries(3) = DateSerial(anneeDate, 5, 8)
      joursFeries(4) = DateSerial(anneeDate, 7, 14)
      joursFeries(5) = DateSerial(anneeDate, 8, 15)
      joursFeries(6) = DateSerial(anneeDate, 11, 1)
      joursFeries(7) = DateSerial(anneeDate, 11, 11)
      joursFeries(8) = DateSerial(anneeDate, 12, 25)
     
      For I = 1 To 8
     
              '    MsgBox (joursFeries(I))
     
      Next
     
    End Function
    Private Sub Calendar0_Updated(Code As Integer)
    If Calendar0.Value = joursFeries(I) Or Calendar0.Value = vbSunday Or Calendar0.Value = vbSaturday Then
    Calendar0.Visible = False
    Else
    Calendar0.Visible = True
    End If
    End Sub
    merci d'avance pour votre aide

  2. #2
    Expert confirmé

    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 419
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 419
    Points : 4 297
    Points
    4 297
    Par défaut
    estferie ne renvoie rien ?
    et le lundi de paques ?
    et l'ascencion ?
    paîen !!

  3. #3
    Membre à l'essai
    Inscrit en
    Octobre 2006
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 26
    Points : 17
    Points
    17
    Par défaut
    en fait j'ai enlevé le lundi de paques puisqu'il est plus férié et la fonction Estferie ne me renvois rien
    je sais pas en fait comment faire je suis un grand débutant

  4. #4
    Expert confirmé

    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 419
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 419
    Points : 4 297
    Points
    4 297
    Par défaut
    le lundi de paques est toujours férié

  5. #5
    Responsable Access

    Avatar de Arkham46
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    5 865
    Détails du profil
    Informations personnelles :
    Localisation : France, Loiret (Centre)

    Informations forums :
    Inscription : Septembre 2003
    Messages : 5 865
    Points : 14 526
    Points
    14 526
    Par défaut
    bjr,

    c'est le lundi de pentecôte qui n'est plus férié...

    sinon ne touche pas aux fonctions de la faq (surtout si tu ne les comprend pas)
    copie les sans les modifier

    si tu veux supprimer le lundi de pentecôte, retire la ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    joursFeries(11) = joursFeries(9) + 49 ' Lundi Pentecôte = lundi de Paques + 49
    ensuite l'événement à utiliser est "Avant mise à jour"
    le paramètre Cancel permet d'annuler la mise à jour

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Private Sub Calendar0_BeforeUpdate(Cancel As Integer)
    ' Si jour férié ou week end
    If EstFerie(Calendar0.Value) Or WeekDay(Calendar0.Value, vbSaturday) < 3 Then
        Cancel = True
    End If
    End Sub

  6. #6
    Membre à l'essai
    Inscrit en
    Octobre 2006
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 26
    Points : 17
    Points
    17
    Par défaut
    merci bcp ça marche impécable
    bonne soirée

Discussions similaires

  1. Condition VBA J-4 sans les week end
    Par Naoned005 dans le forum Macros et VBA Excel
    Réponses: 21
    Dernier message: 12/06/2012, 20h47
  2. [AC-2007] Exclure les Week-ends et jours fériés
    Par foxatout dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 30/04/2012, 10h12
  3. requete de date sans les week-end
    Par bolloche dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 14/05/2008, 23h26
  4. Intervalle Date Sans Compter Les Week Ends
    Par datamind dans le forum Oracle
    Réponses: 6
    Dernier message: 05/05/2006, 18h14

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo