Leçon 32 : alignement, espacement, et redimensionnement automatique des champs et des étiquettes

Temps nécessaire pour suivre cette leçon : Une petite 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

Aperçu de cette leçon

Dans cette leçon, vous allez simplement optimiser votre productivité en apprenant à rapidement aligner, redimensionner et espacer les champs et les étiquettes de manière très précise et rapide, afin d'éviter de se fatiguer les yeux.

Sommaire

  1. Formulaires : alignement automatique des champs
  2. Formulaires : Harmonisation des largeurs et des hauteurs des champs
  3. Formulaires : Harmonisation de l'écartement des champs
  4. Formulaires : alignement des étiquettes : Comparaison de 2 techniques

Avant de commencer cette leçon, créez un formulaire complètement vide, en mode création, basé sur T_Celebrite

Lors des précédents exercices, j'ai constaté que ce n'était pas si évident d'aligner correctement les champs, de leur donner une taille homogène.

Oui, mais je vous ai expliqué dans la leçon 30 que pour qu'ils soient bien alignés, vous deviez prendre plusieurs champs à la fois depuis la liste des champs

Bien sûr, mais ce n'est pas si simple, il y a des cas où il serait pratique de les aligner par la suite...

Je comprend votre problème, par exemple, vous avez une série de champs comme ceci : Essayez de reproduire de formulaire mal foutu :

Voici la liste de ce qu'on peut lui reprocher :


Formulaires : alignement automatique des champs

On peut tout corriger à la main, mais ce n'est pas évident !

Il y a un truc ! Avant de commencer, il faut que vous sélectionnez TOUS les CHAMPS, mais PAS les étiquettes, en dessinant un rectangle, comme nous avons vu à la leçon 30 : . Tous les champs sont alors bien sélectionnés comme ceci :

Voilà. je voudrais qu'ils soient tous alignés !

Nous avons la possibilité de préciser que tous les champs doivent être alignés sur le champ qui est situé le plus à gauche dans le formulaire.

Dans notre cas, c'est le Titre et le Prenom qui sont le plus à gauche. Pour ce faire, allez dans le menu Format/Aligner/Gauche. Maintenant, tous les champs sont alignés à gauche, comme ceci :


Formulaires : Harmonisation des largeurs et des hauteurs des champs

Et si je voulais qu'ils aient tous la même largeur ?

Laissez tout sélectionné, et nous allons définir si nous voulons que tous les champs soient de la même largeur que le plus large d'entre eux (Titre)... Ou le plus étroit (NomClient)!

Admettons qu'on veuille qu'ils soient tous de la largeur du moins large/plus étroit (NomClient). Allez dans le menu Format/Taille/Au plus étroit. Maintenant, tous les champs prennent l'allure du plus étroit :

OK, mais c'est un peu petit tout de même...

Laissez les toujours tous sélectionnés, et vous pouvez les élargir d'un seul coup en utilisant la petite double flèche noire qui se trouve sur les petits carrés de droite : . Elargissez tous les champs en même temps, comme ceci :

Comment puis-je faire pour qu'ils aient tous la même hauteur ?

Même principe que pour la largeur : Il va falloir définir si vous voulez que tous les champs soient égaux au plus grand en hauteur (Prenom), ou au plus "écrasé" (Domaine)

Disons au plus écrasé !

Allez dans le menu Format/Taille/Au plus petit :

Ils sont trop écrasés maintenant...

Oui ? Et alors, qu'est ce que vous faites ?

Eh bien... Comme avant, je cherche la petite double flèche noire, et je les élargis tous en même temps ?

Voilà. Vous obtenez alors ce résultat :


Formulaires : Harmonisation de l'écartement des champs

Et pour qu'ils soient écartés les uns des autres de manière équivalente ?

On constate que Titre est éloigné de NomClient, NomClient est tout collé à Prenom, et Domaine est à nouveau trop loin. Pour ajuster tout ça, Allez dans le menu Format/Espacement vertical/Egaliser. Vous obtenez ce résultat :

C'est bien, mais ils sont un petit peu trop écartés les uns des autres à mon goût...

Allez dans le menu Format/Espacement vertical/Diminuer : . Et si vous voulez encore les resserer, vous refaites encore Format/Espacement vertical/Diminuer une fois ou deux :

Le truc, c'est qu'il faut bien penser à sélectionner tous les champs qu'on veut égaliser !

Oui, pour tout ce qui est Format/Taille, ou Format/Aligner, ou Format/Espacement, c'est totalement idiot d'essayer d'accéder à ces menus si vous n'avez pas sélectionnés plusieurs champs à la fois.

Autre chose : Je constate que l'étiquette Domaine est un tout petit peu trop haut par rapport au champ Domaine. On peut les aligner ?

Bien sûr : vous commencez par sélectionner le champ domaine ET l'étiquette domaine, en dessinant un carré avec la souris pour les prendre les deux, je suppose que vous savez faire ça maintenant. Voici le résultat que vous devriez obtenir : des petits carrés autour du champ ET de l'étiquette :

Je fais Format/Aligner/Bas ?

Exactement : Maintenant le champ et l'étiquette sont juste en face l'un de l'autre, sans décalage :


Formulaires : alignement des étiquettes : Comparaison de 2 techniques

Par contre, les étiquettes ne sont pas du tout alignées :

Nous allons essayer de toutes les aligner correctement, et en même temps, nous allons les rapprocher de leurs champs respectifs, car elles sont un peu loin.

Pour commencer, il est nécessaire d'avoir une référence. Agrandissez juste l'étiquette Nom de manière à ce qu'elle soit presque contre le champ NomClient, comme ceci :

Ensuite, vous sélectionnez TOUTES les ETIQUETTES, mais PAS les CHAMPS :

Maintenant, nous allons aligner toutes les étiquettes sur celle qui se situe le plus à droite (Nom). Pour ce faire, Allez dans le menu Format/Aligner/Droite. Voici le résultat :

C'est tout bien aligné, mais pas le Nom, pourquoi ?

C'est assez subtil : en fait, l'alignement automatique concerne l'étiquette elle-même, pas son contenu.

Je m'explique : ici, toutes les étiquettes sont bien alignées sur la droite, mais, en fait, rappelez-vous juste avant cette opération, je vous avais demandé d'élargir l'étiquette Nom pour qu'elle serve de référence de l'étiquette qui est la plus à droite... Du coup, l'étiquette est maintenant plus large que ce qu'elle contient : nom se trouve dans un rectangle (une étiquette) trop large pour lui...

Toutes les ETIQUETTES sont BIEN alignées à DROITE, mais PAS leur contenu... Leur contenu est en fait, par défaut aligné à GAUCHE à l'intérieur de l'éltiquette....

2ème opération : Cliquez sur l'icône I (pas I de Italique, l'icône après l'icone H) pour aligner les contenus des étiquettes à droite dans leur petit rectangle :

Comme toutes les étiquettes étaient sélectionnées lorsque vous avez exigé l'alignement à droite, tous les contenus des étiquettes sont maintenant alignés à droite de leur petit rectangle, mais vous ne vous en rendez compte qu'avec le Nom, simplement parce que les autres étiquettes sont à peu près exactement de la taille du rectangle qui les contient, ce qui fait qu'on en se rend pas compte si l'alignement est gauche ou droite...

Je crois que j'ai compris. Maintenant, ce n'est pas la peine d'avoir une étiquette Nom qui est largement plus grande que son contenu. Je peux la réduire ?

Bien entendu. N'oubliez pas de cliquer ailleurs avant de re-sélectionner l'étiquette Nom afin de la réduire, parce que comme pour l'instant toutes les étiquettes sont sélectionnées, si vous réduisez une, vous allez toutes les réduire.

Oui, bien sûr.

Mais en fait, je vous livre une astuce : Laissez toutes les étiquettes sélectionnées, et cliquez simplement 2 fois sir le petit carré de gauche de l'étiquette Nom : . Ca à pour effet d'ajuster automatiquement toutes les étiquettes à leur contenu : . Bon, comme ici, seule l'étiquette Nom était trop grande, les autres étiquettes n'ont pas changé.

C'est un peu comme dans Excel : Quand on double-clique entre 2 colonnes, Ca ajuste automatiquement sa largeur ?
Et pour les champs, c'est pareil ? On peut également double cliquer sur les petits carrés pour qu'ils prennent la place optimale ?

Non, parce que les champs ne sont pas pareils : En mode création, c'est écrit "NomClient", mais en mode saisie de données, les noms vont varier d'un enregistrement à l'autre, ce n'est donc pas possibée.

Fermez ce formulaire, et ne l'enregistrez pas

Bon... Hem... On peut résumer

Les formulaires sont personnalisables à l'infini, et les champs avec leurs étiquettes peuvent se placer comme bon nous semble.
Par souci de productivité, Access dispose de quelques outils bien sympathiques qui permettent d'automatiser les alignements : Tout ceci se trouve dans le menu Format :
- Aligner permet d'aligner les champs/étiquettes sur le champ/étiquette qui se trouve le plus à gauche, ou a droite, ou en haut ou en bas.
- Format/Taille permet de donner la même taille à toute une série de champs/étiquettes, en se basant sur le plus grand, le plus petit, le plus large ou le plus étroit.
- Format/espacement vertical permet d'égaliser, d'augmenter ou de diminuer l'espacement se trouvant entre les étiquettes/champs.
- L'espacement horizontal fonctionne de la même naière, mais est beaucoup moins utilisé.

Avez-vous bien compris ?

  1. Une étiquette contient systématiquement du texte qui a la même taille que l'étiquette Elle-même
    a. Non, le texte peut-être plus grand ou plus petit que l'étiquette, c'est possible. ***
    b. Oui

  2. Il est possible de faire Format/Aligner/Bas même si on n'a sélectionné qu'un seul champ ?
    a. Oui
    b. Non ***

  3. Format/Aligner/Au plus grand
    a. Permet d'assigner la taille du champ le plus large de toute la sélection à tous les champs
    b. Permet d'assigner la taille du champ le plus grand en hauteur de toute la sélection à tous les champs sélectionnés ***
    c. Permet de déterminer le nombre de caractères des champs sélectionnés directement dans la table

  4. Format/Espacement vertical/égaliser
    a. Permet d'assigner la même hauteur à tous les champs sélectionnés
    b. Permet de coller d'un seul coup tous les champs les uns en dessous des autres
    c. Permet d'imposer un même espacement entre chaque champ dans le sens de la hauteur ***

  5. Format/Aligner/Taille moyenne
    a. Permet d'imposer la taille moyenne de tous les champs sélectionnés à tous les champs sélectioonnés
    b. Permet d'imposer un espacement moyen entre les champs sélectionnés
    c. N'existe pas ***

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.

Exercice

L'exercice consiste à reproduire le formulaire suivant dans votre base de données habituelle ProFormation :

Constatez que je n'ai pas installé la case à cocher Décédé. L'exercice consiste à utiliser au maximum les notions décrites dans cette leçon. Si vous arrivez à le réaliser en 3 minutes maximum, je vous adresses mes plus sincères félicitations !

Téléchargez la solution de l'exercice ici, qui n'est autre que ProFormation.MDB tel qu'il devrait être à la fin de cette leçon.

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