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

Macros et VBA Excel Discussion :

Probleme selection datepicker [XL-2007]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2013
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2013
    Messages : 8
    Par défaut Probleme selection datepicker
    Bonjour a tous
    Voila j'ai un probleme avec mon calendrier sur excel. Je dois empecher la selection des samedis et des dimanches, j'ai donc mis un message d'alerte lorsqu'on selectionne cette date. Mon probleme est que quand on passe au mois suivant pour chercher les dates plus loin, si la date tombe sur un week end le message s'affiche alors qu'on a pas selectionné la date (on tombe dessus par hasard)

    exemple : on est jeudi 17 oct, je fais la fleche pour passer en novembre et comme c'est un dimanche, le message s'affiche.

    Je debute en VBA si vous avez une idée pour regler ce probleme...

    Merci par avance !

  2. #2
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 208
    Par défaut
    Bonjour,

    Poste ton code.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2013
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2013
    Messages : 8
    Par défaut
    Voici le 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
    Private Sub DTPicker1_Change()
     
    Dim dt2 As Date
    today = Date
    today = today + 30
    DTPicker1.MinDate = today
     
    While Weekday(DTPicker1.MinDate) = vbSunday Or Weekday(DTPicker1.MinDate) = vbSaturday
        today = today + 1
        DTPicker1.MinDate = today
    Wend
     
    dt2 = DTPicker1.Value
    DTPicker2.MinDate = dt2 + 10
     
        If DTPicker1.DayOfWeek = vbSunday Or DTPicker1.DayOfWeek = vbSaturday Then
            MsgBox ("Samedi, dimanche : jours non ouvrés. " & Chr(10) & "Merci de sélectionner une autre date.")
            DTPicker1.Value = today
        Else
            If DTPicker1.Value Like "25/12*" = True Or DTPicker1.Value Like "01/01*" Then
     
                MsgBox ("Point de vigilance jour férié. Merci de sélectionner une autre date.")
                DTPicker1.Value = today
            End If
     
        dt2 = DTPicker1.Value
    DTPicker2.MinDate = dt2 + 10
     
        End If
    End Sub
    Le premiere partie c'est pour empecher de selectionner une date inferieure a 30 jour apres la date actuelle (et ni un samedi ni un dimanche)

    C'est la deuxieme partie qui plante.
    En fait elle marche mais le message s'affiche meme si on ne selectionne pas la date, a partir du moment ou le defilement des mois fait que ca tombe un week end...
    Si vous avez une idée...

    et bonjour Daniel merci de prendre du temps pour m'aider

    Je te joins mon fichier ce sera surement plus simple a comprendre (et tu vas tres vite cerner le probleme je pense)
    Fichiers attachés Fichiers attachés

  4. #4
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 208
    Par défaut
    Ton problème doit venir de ce que "DTPicker1.MinDate" est une date et que le compares avec du texte. ajoute :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
        Dim Dat As String
        Dat = Format(DTPicker1.MinDate, "dd/mm/yyyy")
    et utilise "Dat" pour tes comparaisons avec des chaînes de caractères.

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2013
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2013
    Messages : 8
    Par défaut
    J'ai essayé mais ca ne change rien... J'ai aussi mis DayOfWeek dans une variable mais ca ne fais rien de different non plus.

    En fait je voudrais que le message ne s'affiche que si on selectionne un jours du week end mais par defaut quand on fait defiler les mois, la date (ici le 18) reste selectionnée et si on tombe sur un jour de week end le message s'affiche meme si on a selectionné aucune date.

    Par exemple si je veux aller en fevrier je dois faire defiler les mois et en passant par janvier la date préselectionnée est le 18 aussi (un samedi) et la il me met le message.

    Je sais pas si je suis assez clair ou si c'est incomprehensible...

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2013
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2013
    Messages : 8
    Par défaut
    Finalement j'ai coutourné le probleme Pour info j'ai fait :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    While DTPicker1.DayOfWeek = vbSunday Or DTPicker1.DayOfWeek = vbSaturday 
        DTPicker1.Value = DTPicker1.Value + 1
    Wend
    Comme ca plus de messagebox

    Merci beaucoup pour tes reponses en tout cas et bonne continuation !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. VBA probleme select
    Par Brice1981 dans le forum Access
    Réponses: 2
    Dernier message: 26/08/2006, 15h58
  2. [how to JSP] Probleme Select et options
    Par chernob dans le forum Servlets/JSP
    Réponses: 6
    Dernier message: 26/07/2006, 17h00
  3. probleme select : mauvaise ligne récupérée
    Par ffraggy dans le forum Oracle
    Réponses: 5
    Dernier message: 15/06/2006, 08h50
  4. probleme select in
    Par aviaur dans le forum Langage SQL
    Réponses: 2
    Dernier message: 21/09/2005, 10h55
  5. [html][javascript] probleme <select> affichage
    Par maysa dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 29/09/2004, 15h17

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