Temps nécessaire pour suivre cette leçon : Environ une demie-heure
Pour suivre cette leçon, vous devez avoir suivi les leçons précédentes. Ou plus précisément, vous devez être en possession de la base de données ProFormation.mdb telle qu'elle était à la fin de la leçon précédente. Si vous n'êtes pas certain de l'avoir, vous pouvez la télécharger ici
Dans cette leçon, nous allons apprendre à utiliser un masque de saisie. C'est à dire comment faciliter la saisie de champs qui contiennent des données structurées formellement sans risque d'erreur |
* Le N° AVS est comme le numéro de sécurité sociale en France. C'est un numéro composé comme suit : 382.59.276.311 (par exemple). C'est un numéro qui nous suit toute notre vie pour pouvoir toucher notre "Assurance Vieillesse", ou AI : assurance Invalidité
Effectivement. la propriété "Valide Si"
permet seulement de restreindre des valeurs. Mais ici, ce ne sont pas
des valeurs que vous voulez restreindre, mais une structure
:
3 chiffres .2 chiffres .3 chiffres .3
chiffres
ces groupes de chiffres étant séparés par des points. 398.34.909.112
est correct, mais pas 345.222.12.09
(Les groupes de chiffres ne sont pas respectés) ni A67.VV.223.8H7
(Il y a des lettres qui n'ont rien à faire là) ni 345.32.212
(Il manque le dernier groupe de 3 chiffres).
En fait, ce serait bien qu'on soit "guidé" dans le champ. Nous allons faire en sorte que lors d'un clic dans le champ NoAVS, nous visualisions ce "guide" représenté par des traits de soulignements qui vont nous montrer comment entrer correctement ce numéro : .
Marche à suivre :
Pour commencer, vous créez un nouveau champ NoAVS juste en dessous de Prenom. vous le laissez en texte
Non. Ce n'est pas vraiment vraiment un numérique : Il y aura des points entre les groupes de chiffres.
Dans les propriétés de ce champ NoAVS, vous cliquez sur "Masque de saisie", et ensuite sur : .
Plusieurs élèves m'ont signalé l'absence de ces 3 petits points... J'en ignore la raison (Ce n'est pas la version d'Access, ça c'est certain)... Je pense que c'est éventuellement dû à une installation d'Access avec trop peu d'options.. La réinstallation complète d'Access peut-elle résoudre le problème ? J'attend vos commentaires...
Access vous demande . Dites Oui.Vous arrivez sur une boîte de dialogue qui va vous permettre de choisir le masque de saisie qui correspond le mieux à votre besoin. Nous avons de la chance, le SIN (C'est le numéro de sécurité sociale américain à ce que j'ai pu comprendre) représente exactement la structure que nous désirons : 3 chiffres.2 chiffres.3chiffres.2chiffres. Choisissez le, et cliquez dans la zone essayer : .
Quelqu'un m'a fait remarquer qu'il avait les choix suivants : , si c'est votre cas, choisissez ce qui se rapproche le plus : Par exempleN° Siret. Apparemment, il s'avère que selon le pays définit dans les options régionales du panneau de configuration, lors de l'installation d'Access, s'il se trouve que c'est la France qui est définie, ce sont ces choix qui apparaissent.
Ecrivez quelques chiffres . Vous constatez que les chiffres se répartissent harmonieusement dans la zone, et vous indiquent de manière explicite combien vous devez encore en entrer. Remplissez tous les traits de soulignements sinon vous subirez une erreur (c'est normal... c'est ce qu'on recherche) et cliquez sur . Vous tombez dans cette boîte de dialogue :. Vous allez pouvoir personnaliser votre masque de saisie. La zone "Masque de saisie" contient actuellement 000.00.000.000 : C'est réellement le "masque". Si par exemple, vous aviez voulu entrer une structure de chiffres telle que 2254/24332 (4 chiffres SLASH 5 chiffres), vous auriez inscrit dans cette zone : 0000/00000
Les 0 veulent dire "Chiffre obligatoire". Si à la place de certains 0, vous aviez installé des 9 (000.00.000.999 par exemple), alors le masque de saisie accepterait que les 3 dernières positions ne soient pas remplies. Tandis que le 0 exige un chiffre.
D'ailleurs, il est très possible de créer des masques de saisie
qui acceptent des lettres.
Dans ce cas, ce n'est plus 0 ou 9, mais L. Un masque de saisie tel que LL.LL.LL
acceptera des valeurs telles que zt.hg.lp ou RQ.jz.KK, mais pas rt.88.90 (Les
chiffres sont interdit), ni RT.JK.M (Manque une lettre à la fin). L'aide
d'Access, à la rubrique "Masque de saisie" nous donne un aperçu
des possibilités. Je reproduis ici ce fragment
d'aide
Revenons à nos moutons :
La zone "Masque de saisie" est donc le masque proprement dit.
La zone "Caractère espace réservé" représente le signe qui va être placé à la place des traits de soulignement (_). Par exemple, si vous mettez une étoile (*) dans cette zone , alors, vous devrez écrire "par dessus" ces étoiles. Personnellement, je trouve mille fois plus convivial d'avoir un trait de soulignement, comme c'est proposé par défaut . Laissez donc ce trait de soulignement, et laissez finalement 000.00.000.000 dans "Masque de saisie". Cliquez sur .
Une alternative vous est offerte : . Ce choix est à la fois peu important et subtil. C'est à dire qu'il nous demande s'il est bien nécessaire de stocker de manière interne les points (.) qui séparent les groupes de chiffres. Qu'on réponde oui ou non n'est pas d'une importance primordiale, puisque de toute façon, comme nous avons défini un masque de saisie, les points entre les groupes de chiffres, qu'ils existent réellement en interne dans Access ou qu'ils n'existent pas, ils seront visibles de toute manière.
Par contre, si vous exportez votre table dans Excel par exemple, et que vous avez choisi ici "Sans les symboles dans le masque", les données seront exportées sous Excel sans les points entre les groupes de chiffres. On pourrait alors dire qu'il est légèrement préférable de stocker "Avec les symboles dans le masque". ça prendra un tout petit peu de mémoire en plus (la place que prend les points) mais c'est tellement négligeable.
Choisissez "Avec les symboles dans le masque". Cliquez sur , et puis sur .
C'est terminé. Vous êtes de retour dans votre table en mode création. Vous constatez que dans l'option Masque de saisie, Access a installé ceci : . Le masque de saisie est divisé en 3 parties, séparées par un Point virgule ;
000.00.000.000
: C'est le masque de saisie proprement dit
0 : C'est le
fait que les données seront enregistrées avec les points qui séparent
les sections du numéro AVS (Rappelez-vous plus haut : Si on exporte dans
Excel cette table, il est important que les points de séparation soient
aussi exportés). Si on ne met rien à la place de 0, les points
de séparation ne seront pas installés en interne (Mais ils seront
quand même visible à l'écran... Je sais ce n'est pas évident,
mais ce n'est pas très important non plus...)
_ : Ce trait
de soulignement représente les espaces qu'il faudra remplir quand on
cliquera dans le champ. Si à la place on met une * alors le masque ressemblera
à ***.**.***.*** ... Pas très joli...
Ah ! Attention ! Si vous optez pour ce masque de saisie, vous ne pourrez entrerQUE des téléphones de style (022) 784.67.21... Pas question de mettre un numéro de téléphone d'un autre pays par exemple : 06.12.54.65.89 ne tient pas par exemple
On se calme. Prenez donc un anxiolytique avant de continuer !
Du texte ... Tout simplement... Ce n'est pas parce qu'Access regorge de subtilités qu'il faut ABSOLUMENT les utiliser. Vous avez bien une Ferrari, comme tout le monde, non ? Ce n'est pas pour ça que vous allez rouler continuellement à 300 KM/H, non ???
Oui, vous avez bien compris. soit donc un numéro AVS, ou un numéro d'article tel que FRE-00532 (3 lettres tiret 5 chiffres rar exemple).
Le masque de saisie peut s'écrire à
la main, mais il est mille fois plus pratique d'utiliser l'assistant qu'on
trouve sous la forme d'un bouton avec 3 petits points dans l'option Masque
de saisie du champ que vous voulez traiter. On n'installe un masque de saisie qu'exceptionnellement : Seulement dans le cas ou le champ DOIT contenir des données STRICTEMENT structurées. Un numéro de sécurité sociale : Oui. Un numéro de téléphone : Non. |
Pour voir les solutions, il vous suffit de sélectionner le questionnaire ci-dessus : 3 petites étoiles *** apparaîtront en face des bonnes réponses. |
L'exercice consiste à créer une base
de données que vous appellerez Correspondance.MDB. Dans cette base
de données, vous alez créer une table qui va contenir les
correspondances des différentes normes d'un même produit
pour plusieurs pays. Voici les données que vous allez devoir "Engranger" dans votre table : Boîte de disquette Souris Carte graphique |
Si vous n'êtes pas tout à fait certain d'avoir suivi correctement toutes les étapes de cette leçon, vous avez la possibilité de télécharger ici la version de ProFormation.mdb exactement dans l'état ou elle devrait être à la fin de cette leçon.
Avez-vous une question technique
concernant cette leçon ? Cliquez
ici !
Une remarque sur cette leçon ? Un problème
? Une erreur ? une ambiguité ? Soyez
gentil de m'en informer