begin process at 2008 05 16 08:55:18
1 173 235 membres
76 nouveaux aujourd'hui
13 970 membres club

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é: 2 508 / 303

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)
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

  • 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

Appels d'offres

Pub



CalendriCode

Mai 2008
LMMJVSD
   1234
567891011
12131415161718
19202122232425
262728293031 

Téléchargements

Boutique

Boutique de goodies CodeS-SourceS