Controle de saisie sur date et heure [Résolu]

Signaler
Messages postés
168
Date d'inscription
mercredi 24 mai 2006
Statut
Membre
Dernière intervention
11 septembre 2007
-
 khaledammak -
Bonjour à tous,

mon problème et simple je dispose de deux champs textbox, dans l'un je doit saisir une date au format jj/mm/aa et dasn l'autre une heure au format hh:mm.

Comment je peut m'y prendre pour tester si la date saisie et invalide (ex: 30/02/02 ou 01/13/02) et de même pour l'heure (ex: 25:00 ou 15:61) sachant que si j'utilise la fonction Cdate(MaDate) ca marche si c'est le jours qui est faux mais pas pour le mois.
Pour l'heure je ne sais pas encore comment faire !!

Merci.

30 réponses

Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
17
Mais C'EST un contrôl
Là où tu as les texbox, combobox, commandbutton etc...   ben vu que tu l'as coché, il apparait aussi.
Sélectionne le et comme ton TextBox, déssine le sur ta Form. Visuellement parlant, c'est une comboBox et quand ta form est lancé, lors du click sur la flêche, le calendrier apparait. L'utilisateur choisi la date et toi pour la récupérer, c'est comme un Combo : c'est    NomContrôl.Value   (ici NomControl = DTPicker1)

Donc pas besoin de Dim DTPicker As DTPicker

Quand tu cliques, ça fait ça :

@++

  Mortalino 
Le Mystérieux Chevalier "Provençal, le Gaulois"
N'oubliez pas de lire le règlement
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
17
Ben en fait il faut en créer un second, dans la fenêtre des propriétés, à format, met Time
Par défaut, à l'affichage, c'est "00:00:00" mais tu peux lui dire
DTPicker2.Value = "08:00:00"

L'avantage, c'est que tu ne peux dépasser 23:59:59

@++

  Mortalino 
Le Mystérieux Chevalier "Provençal, le Gaulois"
N'oubliez pas de lire le règlement
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
17
Salut,

Pour éviter ce genre de problème (et de saisie à coup sûr), je te conseille d'utiliser soit le contrôl Date and Time Picker (ou DTPicker).

C'est un calendrier déjà tout fait, où tu as possibilité de récupérer ces infos sans erreurs de saisies.

@++

  Mortalino 
Le Mystérieux Chevalier "Provençal, le Gaulois"
N'oubliez pas de lire le règlement
Messages postés
168
Date d'inscription
mercredi 24 mai 2006
Statut
Membre
Dernière intervention
11 septembre 2007

heu..... wé je ve bien mais je ne trouve même pas l'aide pour savoir comment l'utilisé !!
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
17
Salut,

Regarde dans les références à rajouter.
Il s'appelle comme je te l'ai marqué ou au pire rajoute "Microsoft" devant.

Ensuite gère le avec ses évènements *Change / *Enter / *Exit
Pour les formats, tu as le *LongDate / *ShortDate / *Time
Puis pour récupérer la valeur : DTPicker1.Value

@++

  Mortalino 
Le Mystérieux Chevalier "Provençal, le Gaulois"
N'oubliez pas de lire le règlement
Messages postés
168
Date d'inscription
mercredi 24 mai 2006
Statut
Membre
Dernière intervention
11 septembre 2007

oki bon je l'ais trouvé il failait rajouter dans les référence mais si il été possible de trouvé un exemple pour utilisé ce controle merci !!

J'ais vue qu'on pouvais l'utilisé de deux méthode différente soit avec un calendrier déroulant soit en format de date si il été possible d'avoir un exemple de ces deux méthode.
 
Merci.
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
17
Dim DateChoisie As Date

DateChoisie = DTPicker1.Value

Sois tu le récupère par l'intermédiaire de l'un de ces trois évènements : *Change / *Enter / *Exit
Soit par ton bouton Valider si tu en as un. ^^

@++

  Mortalino 
Le Mystérieux Chevalier "Provençal, le Gaulois"
N'oubliez pas de lire le règlement
Messages postés
168
Date d'inscription
mercredi 24 mai 2006
Statut
Membre
Dernière intervention
11 septembre 2007

D'accord pour le récupérer mais je fait comment pour choisir la date ?

Je te rappel qu'a l'origine j'utilisé un textbox pour la saisie maintenant je doit utilisé quoi ?

j'ais déclaré mon dtpicker : Dim DTPicker As DTPicker
ma variable comme tu me l'a dis : Dim DateChoisie As Date

mais bon sur ma forme je n'ais tj que mon textbox !! et rien d'autre je ne voi pas comment faire !!
Messages postés
168
Date d'inscription
mercredi 24 mai 2006
Statut
Membre
Dernière intervention
11 septembre 2007

Désolé d'abittude je pige assez vite mais la je ne connais pas cet objet et je ne l'ais pas dans ma bare d'oblet donc --> je fonce vers l'inconnu !!
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
17
Désolé pour l'affichage, mais il y a un bug dans l'insertion des images. J'ai du pâsser par Insérer Image From Gallery.

@++

  Mortalino 
Le Mystérieux Chevalier "Provençal, le Gaulois"
N'oubliez pas de lire le règlement
Messages postés
168
Date d'inscription
mercredi 24 mai 2006
Statut
Membre
Dernière intervention
11 septembre 2007

lol je ve bien mais il n'y est pas !! quand je fait click droit sur la bare d'outil --> composant pour ajouter "Microsoft windows Commun controls-2 6.0 (sp6) et que je fait "appliquer" ca me dis "Nom de module,de projet ou de bibliothèque déjà utilisé" !!
moi je ve bien ca serrai simple si c'été comme tu le dis mais non avec moi ya tj un pb de tout facon !!

Tout à l'heure j'ais ajouter en faisant :

Projet
Références...
Parcourir
et j'ais pris le MSCOMCT2.OCX

c'est comme cela que j'ais pu déclaré mon DTPicker mais ca ne m'a pas rajouter de controle !!
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
17
C'est étonnant, qui dit .ocx dit contrôl.
Essaie peut-etre de vérifier tes élements sélectionnés, décoche le, fait appliquer et recoche le.

Si ça n'apparait pas  :



















Private WithEvents NewDTPicker As DTPicker  'à mettre dans les déclarations

'dans Form_Load
:
Set NewDTPicker = Controls.Add("VB.DTPicke", "NewDTPicker")

With NewDTPicker
.Visible = True
.Top = xx
.Left = xx
.Width = met la longueur
.Height = met la hauteur
End With





@++

  Mortalino 
Le Mystérieux Chevalier "Provençal, le Gaulois"
N'oubliez pas de lire le règlement
Messages postés
168
Date d'inscription
mercredi 24 mai 2006
Statut
Membre
Dernière intervention
11 septembre 2007

bon je pense que je n'ais pas ajouter le bon truck mais de tout je le trouve pas !!
je suis deg !!
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
17
Attention, dans la phrase
Set NewDTPicker = Controls.Add("VB.DTPicke", "NewDTPicker")
c'est bien sûr DTPicker  (oublie du   r)

@++

  Mortalino 
Le Mystérieux Chevalier "Provençal, le Gaulois"
N'oubliez pas de lire le règlement
Messages postés
168
Date d'inscription
mercredi 24 mai 2006
Statut
Membre
Dernière intervention
11 septembre 2007

lol je pe pas le décoché il n'y est pas mais bon vais voir si en faison comme tu me le dis ca marche !!
Messages postés
168
Date d'inscription
mercredi 24 mai 2006
Statut
Membre
Dernière intervention
11 septembre 2007

bon ok sinon tu ne connias pas le nom exacte du controle a moin que ce soit celui que j'ais mentionné plus haut !! oki pour le 'r'
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
17
Et je confirme que c'est bien celui que tu as trouvé (par rapport au nom de la référence MSCOMCT2)
Fais une création dynamique comme dans mon code précédant.

@++

  Mortalino 
Le Mystérieux Chevalier "Provençal, le Gaulois"
N'oubliez pas de lire le règlement
Messages postés
168
Date d'inscription
mercredi 24 mai 2006
Statut
Membre
Dernière intervention
11 septembre 2007

oki d'accord merci vais voir si ca marche comme ca (enfin je me doute que ca va marché, tu sais ce que tu dis ) lol..
Messages postés
168
Date d'inscription
mercredi 24 mai 2006
Statut
Membre
Dernière intervention
11 septembre 2007

bon a parament il connais pas le .Visible
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
17
Là je peux pas te dire, j'ai pas VB sur moi. Mais je t'avouerai que je ne comprends pas pourquoi le contrôl n'apparait pas dans la liste.

@++

  Mortalino 
Le Mystérieux Chevalier "Provençal, le Gaulois"
N'oubliez pas de lire le règlement