Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

SAISIE ASSISTÉE DE DATES


Information sur la source

Catégorie :Souris, Clavier, etc. Classé sous : Saisies, contrôlée, dates Niveau : Débutant Date de création : 14/11/2007 Date de mise à jour : 14/11/2007 07:23:51 Vu / téléchargé: 3 999 / 388

Note :
Aucune note

Commentaire sur cette source (3)
Ajouter un commentaire et/ou une note

Description

Code dans la lignée de celui déposé ici :

http://www.vbfrance.com/code.aspx?ID=42484

en ce qui concerne d'autres saisies assistées.

Celui-ci concerne la saisie de dates, dans plusieurs formats (aux choix de l'utilisateur)
 

Fichier Zip

Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

Commentaires et avis

signaler à un administrateur
Commentaire de Renfield le 14/11/2007 07:44:40 administrateur CS

'lut l'ami, petit test:


je selectionne tout le texte, dans le dessein de le vider, je presse 'Suppr' et seul un caractère disparait.

Nous sommes obligés de saisir TOUS les chiffres...
pas possible de saisir 7/7/7, par exemple et que ton code interprète bien 07/07/2007, par exemple

verifcomplet par du principe qu'une date DOIT faire obligatoirement 10 caractères (ou, étrangement, un multiple de 10...)
pas possible, donc, de saisir par exemple 31/12/83

mm/dd/yyyy fonctionne mais pas MM/DD/YYYY

ce test me laisse perplexe...
  q.SelStart = Len(t)
  If q.SelStart < Len(t) Then
    q.SelStart = Len(t)
    Beep
    Exit Function
  End If

signaler à un administrateur
Commentaire de jmfmarques le 14/11/2007 09:08:41

Bonjour Renfields

Il est facile  de permettre la saisie de 7/7/7 interprêté en 07/07/2007.
J'ai voulu l'éviter et ne le ferai donc pas pour deux raisons :
1) alourdissement du code (tests supplémentaires) sans gain réel.
2) on y gagnerait certes la frappe d'un chifre de temps à autre (lorsque sur 1 chiffre au lieu de 2) mais alors :
a) on perdrait l'ajout automatique du séparateur (souvent le plus fastidieux)puiqu'aucun code ne saurait déterminer si, à la frappe de 1 (par exemple), l'utilisateur n'a pas l'intention de frapper 12 (par exemple)
b) on ouvre la porte à youtes les étourderies (contraire de la vocation de l'outils, qui est celle d'assurer la meilleure sécurité). Je ne ferai jamais un outil permettant à l'utilisateur de saisir un millésime sur 2 chiffres, y compris si l'outil se sibstitue ) lui pour en écrire 4...(je n'oublie pas les mésaventures 2K ...). La philosophie est simple : ou l'on fait totalement confiance à l'utilisateur et dans ce cas on n'a plus besoin d'un contrôle de saisie, ou on se méfie des étourderies et on évite qu'il puisse frapper un 07 pour signifier une date de naissance 1908, qu'il n'y prenne garde, et que l'on se retrouve avec un magnifique nouveau-né (2008) correspondant à un centenaire.... Je ne ferai donc certainement pas celà ...(j'ai malheusement été le témoin, dans un certain ministère, des dépenses générées des quelquefois des années plus tard, dépenses parmi lesquelles l'intervention de magistrats pour rectifier un acte d'état-civil et le dédommagement d'héritiers n'ayant pu jouir de leurs droits qu'une fois l'affaire réglée...)
En ce qui concerne l'effacement : lorsque la date est complètement frappée, la sélection de la totalité puis l'utilisation de la touche suppr l'efface complètement. Ce que tu dis (effacement du dernier chiffre uniquement) n'arrive que si l'utilisateur sélectionne la totalité d'yne date incomplète puis utilise la touche suppr. J'ai délibérément adopté cette approche pour plusieurs raisons. L'inventaire en serait long, mais en voici quelques unes :

- il est bien rare que l'on décide de saisir une date puis que l'on se ravise en chemin
- lorsque tel est le cas, il est bien plus facile de laisser son doigt sur la touche backspace que de sélectionner puis d'enfoncer la touche suppr.
- su l'utilisateur s'aperçoit de ce qu'il s'est trompé d'un chiffre, il peut :
a) soit le sélectionner (un seul) et directement frapper le caractère (unique) de remplacement
b) soit revenir en arrère en utilisant uniquement la touche backspace

Avant d'arrêter mon choix (j'avais mis en place plusieurs ergonomies), j'ai mis au clavier mon épouse, mes trois filles et mes petits voisins. Leur p^référence unanime a été celle de l'ergonomie finalement choisie.

verifcomplet ne risque pas de traiter un multiple de 10 puisque tu ne peux saisir plus de 10 caractères. En utilisant Mod, je permets de quitter si le champ de saisie est vide, avec simplement Mod, sans avoir à écrire un if supplémentaire pour traiter ce cas, c'est tout)


Je veux bien faire en sorte que l'on puisse choisir MM/DD/YYYY au lieu de mm/dd/yyyy uniquement (j'avais choisi les minuscules uniquement par goût personnel).

La modif ne coûtera pas cher :
changer : Select Case Left(jfr,1) ===>> en Select Case Lcase(jfr,1))   ===>> je le ferai à l'occasion...

En ce qui concerne :

q.SelStart = Len(t)
  If q.SelStart < Len(t) Then
    q.SelStart = Len(t)
    Beep
    Exit Function

C'est tout simplement un bout de code qui a échappé au nettoyage final et iù l'un des t était un ch.
Il convient de supptimer ces lignes totalement inutiles

Voilà :

Donc oui : j'apporte 2 petites modification (suppression des lignes devenues inutiles et ayant échappé au nettolyage - ajout du Lcase pour permettre des formats en Majuscules), mai non : je ne modifie absolument pas l'ergonomie.

signaler à un administrateur
Commentaire de jmfmarques le 14/11/2007 11:20:49

Bon...

J'ai quand même ajusté ce qu'il fallait pour permettre également l'effacement de la totalité sélectionnée, même en cas de saisie non encore complète.

Je ne changerai toutefois pas immédiatement le zip car je suis sur le point de terminer la saisie assistée des heures (principe quelque peu différent).

Je ne changerai donc de zip que lorsque cette partie-là sera également terminée et testée par les "utilisateurs" autour de moi (s'agissant en effet d'un outil destiné à des utilisateurs finaux, leur avis est et doit rester prépondérant, bien évidemment).

Le nouveau zip contiendra donc les DEUX saisies : dates et (procédure distincte) les heures, avec possibilité de choisir heure:minutes:secondes ou heures:minutes.

A très bientôt, donc.

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

Parcours de dates [ par Olidek ] Bonjour amis developpeurs, Je voudrais savoir comment faire pour ajouter un mois a une variable contenant une date ??? Merci d'avance comparer les dates [ par tran ] Bonjour,savez vous comment comparer 2 dates (&gt; ou &lt;). Je voudrais réaliser un programme qui calcule les signes astroMerci - Tran Comparaison de dates [ par TheDude ] Je cherche à comparer deux dates au moyen de la fonction DateDiff intégréesous access et tester le résultat dans un If dont voici un exemple : If nombre de samedi et dimanche entre deux dates [ par TheDude ] Je suis à la recherche d'une fonction qui permettrait de compter le nombresamedi plus le nombre de dimanche entre deux dates données.Je ne sais pas s' Prob sur les dates [ par stef ] Salut a tousExiste t-il une fonction qui retourne le numero de la semaine en cours a partir d'une date donnée ? comparaison entre deux dates [ par Brodeur ] Bonjour, je voudrais comparer deux date, savoir laquelle est la plus grande mais lorsque je fais ca, le prog ne prend en compte que les joursVoici mon Forma Dates (Débutant) [ par MSI ] Comment exprime t'on une date lorque l'on veut simplement le jour et lemois (sans l'année).Je voudrais qu'un évenement s'effectue par exemple le 03 No additionner deux dates [ par tom ] Commment puis je additionner une date que je recupere et un chiffre qui correspond par exemple a un nbre d'annéeex:15/02/81 + 5 = 15/02/86Merci d'avan Requête générale [ par moliere ] Bonjour.Sous access j'ai établi des champs dont un "Date" qui reprend toutes les dates de l'année, dans une table baptisée "travaux".Sous VB6 je cherc Requête à partir de dates patielles, est-ce possible? [ par Jos ] Bonjour, Je me casse la tête, depuis quelques jours, à comparer des dates partielles, je m'explique... J'ai un formulaire comprenant deux champs j


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,406 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.