Création d’une liste de choix à l’aide d’une zone de liste ou d’une zone de liste déroulante

Création d’une liste de choix à l’aide d’une zone de liste ou d’une zone de liste déroulante

Quand vous entrez des données sur un formulaire dans des bases de données Access, il est bien plus rapide et facile de sélectionner une valeur dans une liste plutôt que de se souvenir d’une valeur à entrer. Une liste de choix permet également de garantir que la valeur entrée dans un champ est pertinente. Un contrôle de liste peut se connecter à des données existantes ou afficher des valeurs fixes que vous renseignez lors de la création du contrôle. Lisez cet article pour en savoir plus sur les contrôles de liste disponibles pour les formulaires Access, et comment les créer et les personnaliser.

Remarque : Cet article ne s’applique pas aux applications web Access.

Que voulez-vous faire ?

Présentation des différents types de contrôles de zone de liste

Création d’une zone de liste ou d’une zone de liste déroulante en utilisant l’Assistant

Création d’une zone de liste ou d’une zone de liste déroulante via l’ajout d’un champ Liste de choix à un formulaire

Création d’une zone de liste ou d’une zone de liste déroulante sans utiliser l’Assistant

Modification d’une liste de valeurs quand un formulaire est ouvert en mode Formulaire

Personnalisation d’une zone de liste ou d’une zone de liste déroulante

Présentation des différents types de contrôles de zone de liste

Access propose deux types de contrôles de liste pour les formulaires : les zones de liste et les zones de liste déroulante.

Zone de liste    Une zone de liste affiche une liste de valeurs ou de choix. Elle contient des lignes de données et est généralement dimensionnée de manière à rendre plusieurs lignes visibles à tout instant. Les lignes peuvent être divisées en colonnes, lesquelles peuvent apparaître avec ou sans en-tête. Si la liste possède davantage de lignes que ne peut en afficher le contrôle, Access affiche une barre de défilement dans ce dernier. L’utilisateur est limité aux choix proposés dans la zone de liste et ne peut pas entrer de valeur dans cette dernière.

Zone de liste

Zone de liste déroulante    Une zone de liste déroulante offre une méthode plus compacte pour présenter une liste de choix, car la liste est masquée jusqu’à ce que vous cliquiez sur la flèche de déroulement. Ce type de contrôle vous donne également la possibilité d’entrer une valeur qui ne figure pas dans la liste. Ainsi, la zone de liste déroulante combine les fonctionnalités d’une zone de texte et celles d’une zone de liste.

Utilisation d’une zone de liste déroulante (liste déroulante)

1. Cliquez sur la flèche pour afficher la liste déroulante.

2. Choisissez une option dans la liste déroulante.

Les zones de liste et les zones de liste déroulante peuvent être des contrôles dépendants ou indépendants. Ces contrôles peuvent rechercher des valeurs figurant dans une liste fixe que vous renseignez vous-même, ou rechercher des valeurs dans une table ou une requête. Pour créer une zone de liste ou une zone de liste déroulante dépendante qui recherche des valeurs dans une table ou une requête, veillez à ce que le formulaire ait pour base une source d’enregistrement qui inclue un champ de clé étrangère ou un champ Liste de choix. Ainsi, vous pouvez créer les relations dont vous avez besoin pour associer les données figurant dans la zone de liste ou dans la zone de liste déroulante aux données du formulaire.

Création d’une zone de liste ou d’une zone de liste déroulante en utilisant l’Assistant

  1. Dans le volet de navigation, cliquez avec le bouton droit sur le formulaire, puis cliquez sur Mode Création.

    Remarque : Cette procédure part du principe que le formulaire dépend d’une table ou d’une requête. Dans le cas contraire, certaines étapes ne s’appliquent pas. Pour déterminer si le formulaire dépend d’une table ou d’une requête, appuyez sur F4 pour afficher la feuille de propriétés. Sous l’onglet Données de cette dernière, la zone de propriété Source d’enregistrement affiche la table ou la requête dont dépend le formulaire.

  2. Sous l’onglet Création, dans le groupe Contrôles, vérifiez que Utiliser les Assistants Contrôle Image du bouton est sélectionné.

  3. Cliquez soit sur l’outil Zone de liste Image du bouton , soit sur l’outil Zone de liste déroulante Image du bouton .

  4. Sur le formulaire, cliquez sur l’emplacement où vous souhaitez placer la zone de liste ou la zone de liste déroulante.

    • En fonction de votre choix, l’Assistant Zone de liste ou l’Assistant Zone de liste déroulante démarre.

  5. Quand l’Assistant vous invite à indiquer la manière dont vous souhaitez obtenir les valeurs du contrôle, choisissez l’une des options suivantes :

    • Si vous souhaitez afficher les données actuelles à partir d’une source d’enregistrement, cliquez sur Je veux que la liste déroulante extraie les valeurs d’une autre table ou requête.

    • Si vous souhaitez afficher une liste de valeurs fixe qui changeront rarement, cliquez sur Je taperai les valeurs souhaitées.

    • Si vous souhaitez que le contrôle effectue une opération de recherche plutôt qu’il serve en tant qu’outil d’entrée de données, cliquez sur Rechercher un enregistrement dans mon formulaire basé sur la valeur que j’ai sélectionnée dans la liste déroulante. Cette action a pour effet de créer un contrôle indépendant avec une macro incorporée qui réalise une opération de recherche sur la base de la valeur entrée par l’utilisateur.

  6. Pour spécifier la manière dont les valeurs apparaissent, suivez les instructions.

  7. Si vous avez choisi l’une des deux premières options dans la première page de l’Assistant, ce dernier vous invite à choisir le comportement d’Access lorsque vous sélectionnez une valeur. Effectuez l’une des opérations suivantes :

    • Pour créer un contrôle indépendant, cliquez sur Mémoriser la valeur pour usage ultérieur. Cela signifie qu’Access conserve la valeur sélectionnée tant que l’utilisateur n’a pas modifié celle-ci ou n’a pas fermé le formulaire. Toutefois, Access n’écrit pas la valeur dans une table.

    • Pour créer un contrôle dépendant, cliquez sur Stocker la valeur dans ce champ, puis sélectionnez le champ auquel vous voulez lier le contrôle.

  8. Cliquez sur Suivant et entrez une étiquette pour le contrôle. Cette étiquette sera affichée en regard du contrôle.

  9. Cliquez sur Terminer.

Création d’une zone de liste ou d’une zone de liste déroulante via l’ajout d’un champ Liste de choix à un formulaire

Vous pouvez créer une zone de liste ou une zone de liste déroulante dépendante en ajoutant un champ Liste de choix à un formulaire.

  1. Créez un champ Liste de choix dans la table. Ce champ peut contenir une ou plusieurs valeurs.

    Pour plus d’informations sur la création de champs Liste de choix, voir l’article Ajouter ou modifier une colonne de recherche permettant d’enregistrer plusieurs valeurs.

  2. Effectuez l’une des opérations suivantes :

    • Créez un formulaire basé sur une source d’enregistrement qui inclut le champ Liste de choix. Par exemple, dans le volet de navigation, sélectionnez une table ou une requête qui contient le champ Liste de choix, puis sous l’onglet Créer, dans le groupe Formulaires, cliquez sur Formulaire Image du bouton .

      Access crée automatiquement une zone de liste déroulante pour le champ Liste de choix.

    • Ajoutez une zone de liste ou une zone de liste déroulante à un formulaire :

      1. En mode Création, ouvrez un formulaire basé sur une source d’enregistrement qui inclut le champ Liste de choix.

      2. Si le volet Liste de champs ne s’affiche pas, appuyez sur Alt+F8 pour l’afficher.

      3. Double-cliquez sur le champ Liste de choix, ou faites glisser ce dernier à partir du volet Liste de champs vers le formulaire. Access crée automatiquement une zone de liste déroulante liée au champ.

        Conseil : Pour transformer une zone de liste déroulante en zone de liste (ou vice-versa), cliquez avec le bouton droit sur le contrôle, cliquez sur Remplacer par dans le menu contextuel, puis choisissez le type de contrôle souhaité.

Création d’une zone de liste ou d’une zone de liste déroulante sans utiliser l’Assistant

Quand vous créez une zone de liste ou une zone de liste déroulante sans l’aide de l’Assistant, vous devez définir vous-même les propriétés du contrôle. Pour plus d’informations sur une propriété en particulier, cliquez sur la zone de propriété concernée et cliquez sur F1.

  1. Ouvrez un formulaire en mode Création.

  2. Sous l’onglet Création, dans le groupe Contrôles, vérifiez que Utiliser les Assistants Contrôle n’est pas sélectionné.

    Image du bouton

  3. Cliquez sur l’outil Zone de liste Image du bouton ou sur l’outil Zone de liste déroulante Image du bouton .

  4. Cliquez une fois dans le formulaire pour créer un contrôle dimensionné automatiquement, ou cliquez et faites glisser jusqu’à obtenir la taille souhaitée.

  5. Sélectionnez le contrôle et appuyez sur F4 pour ouvrir sa feuille de propriétés.

  6. Définissez les propriétés Origine source et Contenu en vous aidant du tableau suivant.

Pour

Définissez la propriété Origine source sur

Définissez la propriété Contenu comme suit

Afficher des valeurs d’une table ou d’une requête, ou les résultats d’une instruction SQL

Table/Requête

Dans la liste déroulante, sélectionnez la table ou la requête contenant les valeurs que vous souhaitez voir apparaître dans la zone de liste ou dans la zone de liste déroulante.

–ou–

Tapez une instruction SQL.

–ou–

Sous l’onglet Données de la feuille de propriétés, cliquez sur Bouton Générateur pour ouvrir le Générateur de requêtes. Pour plus d’informations sur la génération d’une requête, voir l’article Créer une requête Sélection simple.

Afficher une liste de valeurs fixe

Liste valeurs

Tapez une liste fixe de valeurs séparées par un point-virgule (;). Par exemple, Nord;Sud;Est;Ouest

–ou–

Sous l’onglet Données de la feuille de propriétés, cliquez sur Bouton Générateur pour ouvrir la boîte de dialogue Modifier les éléments de liste, puis tapez les éléments sur des lignes séparées.

Afficher une liste de champs à partir d’une table ou d’une requête

Liste des champs

Dans la liste déroulante, sélectionnez la table ou la requête contenant les noms des champs que vous souhaitez voir apparaître dans la zone de liste ou dans la zone de liste déroulante.

  1. Si vous souhaitez que le contrôle ait plusieurs colonnes, cliquez sur la zone de propriété Nbre colonnes et tapez le nombre de colonnes souhaité. Par ailleurs, vous pouvez ajuster la largeur des colonnes en définissant la propriété Largeurs colonnes. Pour plus d’informations sur chaque propriété, placez le curseur dans la zone de propriété et appuyez sur F1.

  2. Si vous souhaitez qu’Access stocke la valeur que vous sélectionnez, cliquez sur la zone de propriété Source contrôle et sélectionnez le champ auquel vous souhaitez lier la zone de liste ou la zone de liste déroulante.

Modification d’une liste de valeurs quand un formulaire est ouvert en mode Formulaire

Si la propriété Origine source de la zone de liste ou de la zone de liste déroulante est définie sur Liste valeurs, vous pouvez modifier la liste de valeurs lorsque le formulaire est ouvert en mode Formulaire. Vous évitez ainsi d’avoir à basculer en mode Création ou en mode Page, à ouvrir la feuille de propriétés et à modifier la propriété Origine source associée au contrôle chaque fois que vous devez apporter des modifications à la liste.

Remarque : Pour modifier la liste des valeurs, la propriété Autoriser les modifications de la liste de valeurs associée à la zone de liste ou à la zone de liste déroulante doit être définie sur Oui.

Modifier une liste de valeurs en mode Formulaire

Lorsque le curseur entre dans une zone de liste ou dans une zone de liste déroulante (en cliquant ou en appuyant sur la touche Tab pour accéder à la zone), un bouton apparaît en dessous de la liste.

Zone de liste déroulante avec le bouton Modifier les éléments de liste

  1. Cliquez sur ce bouton pour ouvrir la boîte de dialogue Modifier les éléments de liste.

  2. Modifiez les éléments de la liste, en conservant chaque élément sur une liste séparée.

  3. Pour sélectionner une valeur par défaut pour les nouveaux enregistrements, cliquez sur la flèche de déroulement dans la zone Valeur par défaut, puis cliquez sur la valeur souhaitée.

  4. Cliquez sur OK.

Empêcher la modification de la liste de valeurs en mode Formulaire

  1. Dans le volet de navigation, cliquez avec le bouton droit sur le formulaire, puis cliquez sur Mode Création ou sur Mode Page.

  2. Cliquez sur le contrôle pour le sélectionner, puis appuyez sur F4 pour afficher la feuille de propriétés.

  3. Sous l’onglet Données de la feuille de propriétés, définissez la propriété Autoriser les modifications de la liste de valeurs sur Non.

  4. Cliquez sur Fichier, puis sur Enregistrer, ou appuyez sur Ctrl+S Image du bouton .

Spécifier un autre formulaire pour modifier la liste de valeurs

Par défaut, Access fournit un formulaire intégré à des fins d’édition de la liste de valeurs. Si vous disposez d’un autre formulaire que vous préférez utiliser à cette fin, vous pouvez entrer le nom du formulaire dans la propriété Formulaire Modifier les éléments de liste, comme suit :

  1. Dans le volet de navigation, cliquez avec le bouton droit sur le formulaire, puis cliquez sur Mode Création ou sur Mode Page dans le menu contextuel.

  2. Cliquez sur le contrôle pour le sélectionner, puis appuyez sur F4 pour afficher la feuille de propriétés.

  3. Sous l’onglet Données de la feuille de propriétés, cliquez sur la flèche de déroulement dans la zone de propriété Formulaire Modifier les éléments de liste.

  4. Cliquez sur le formulaire à utiliser pour modifier la liste de valeurs

  5. Cliquez sur Fichier, puis sur Enregistrer, ou appuyez sur Ctrl+S Image du bouton .

Personnalisation d’une zone de liste ou d’une zone de liste déroulante

Ouvrez le formulaire en mode Création, assurez-vous que la zone de liste ou que la zone de liste déroulante est sélectionnée, puis appuyez sur F4 pour ouvrir la feuille de propriétés associée au contrôle. Effectuez ensuite l’une des opérations suivantes :

  • Modifier l’ordre de tri dans une zone de liste ou dans une zone de liste déroulante    Si vous avez utilisé un Assistant pour créer la zone de liste ou la zone de liste déroulante, Access trie automatiquement les lignes qui forment la liste sur la base de la première colonne visible. Voici comment faire si vous voulez spécifier un ordre de tri différent, ou si vous avez défini la propriété Contenu du contrôle sur une requête enregistrée :

    • Cliquez sur l’onglet Données de la feuille de propriétés, puis cliquez sur la zone de propriété Contenu.

    • Sous l’onglet Données, cliquez sur Bouton Générateur pour ouvrir le Générateur de requêtes.

    • Dans la ligne Tri associée à la colonne à trier, spécifiez l’ordre de tri voulu.

  • Lier une colonne d’une zone de liste ou d’une zone de liste déroulante   

    Dans la zone de propriété Colonne liée de la zone de liste ou de la zone de liste déroulante, spécifiez un nombre correspondant à l’emplacement de la colonne dans la zone de liste ou dans la zone de liste déroulante. Par exemple, tapez 1 pour lier la première colonne de la zone de liste ou de la zone de liste déroulante au champ sous-jacent spécifié dans la propriété Source contrôle. Lorsque vous faites le compte des colonnes, n’oubliez pas d’inclure les colonnes masquées.

    Si vous définissez la propriété Colonne liée sur 0, Access enregistre l’index de liste au lieu d’une valeur provenant de l’une des colonnes. Cette action est utile si vous voulez stocker une séquence de nombres au lieu de la valeur de liste.

  • Masquer une colonne d’une zone de liste ou d’une zone de liste déroulante d’un formulaire   

    • Dans la zone de propriété Largeurs colonnes, tapez 0 pour la ou les colonnes à masquer.

      Par exemple, supposez que vous avez une zone de liste déroulante dépendante à deux colonnes : la largeur de la colonne IDFournisseur est de 1,25 cm et la largeur de la colonne NomFournisseur est de 5 cm. La colonne IDFournisseur est la première colonne de la liste. Par conséquent, la propriété Largeurs colonnes est définie sur 1,25 cm;5 cm. Pour masquer la colonne IDFournisseur, définissez la propriété Largeurs colonnes sur 0 cm;5 cm. La colonne IDFournisseur est toujours la colonne liée, même si elle est masquée.

  • Remarque : Dans une zone de liste modifiable, la première colonne visible est affichée dans la zone de texte lorsque la liste n’est pas affichée. Par exemple, la colonne NomFournisseur de l’exemple précédent est affichée, car la colonne IDFournisseur est masquée. Si la colonne IDFournisseur n’était pas masquée, elle serait affichée à la place de la colonne NomFournisseur.

  • Ajouter des en-têtes de colonnes à une zone de liste déroulante d’un formulaire   

    • Dans la zone de propriété En-têtes colonnes, cliquez sur Oui pour afficher les en-têtes de colonnes. Dans les zones de liste déroulante, les en-têtes sont uniquement affichés lorsque la liste est ouverte.

      Si la zone de liste ou la zone de liste déroulante a pour base une source d’enregistrement, Access utilise les noms des champs de la source d’enregistrement en tant qu’en-têtes de colonnes. Si le contrôle de zone de liste est basé sur une liste de valeurs fixe, Access utilise les premiers éléments de données n dans la liste de valeurs (propriété Contenu) en tant qu’en-têtes de colonnes, où n représente le nombre défini dans la propriété Nbre colonnes.

  • Désactiver la fonctionnalité de remplissage automatique pour une zone de liste déroulante d’un formulaire   

    • Dans la zone de propriété Auto étendre, cliquez sur Non.

      Lorsque la propriété Auto étendre est définie sur Non, vous devez sélectionner une valeur dans la liste ou taper la valeur en entier.

  • Définir la largeur de la zone de liste d’une zone de liste déroulante d’un formulaire   

    • Dans la zone de propriété Largeur liste, entrez la largeur souhaitée en utilisant l’unité de mesure actuelle (définie dans le Panneau de configuration Windows). Pour utiliser une autre unité de mesure, ajoutez un indicateur de mesure. Par exemple, entrez 2 cm. N’oubliez pas de laisser assez d’espace pour une barre de défilement.

      La zone de liste de la zone de liste déroulante peut être plus large que la zone de texte, mais pas le contraire. Le paramètre par défaut (Auto) signifie que la largeur de la zone de liste est égale à celle de la zone de texte d’une zone de liste déroulante.

  • Définir le nombre maximal de lignes à afficher dans une zone de liste déroulante d’un formulaire   

    • Dans la zone de propriété Lignes affichées, entrez un nombre.

      Si le nombre actuel de lignes dépasse le nombre spécifié dans la propriété Lignes affichées, une barre de défilement verticale est affichée dans la zone de liste déroulante.

  • Restreindre les entrées d’une zone de liste déroulante à des éléments figurant dans la zone de liste d’une zone de liste déroulante d’un formulaire   

    • Dans la zone de propriété Limiter à liste, cliquez sur Oui.

      Remarque : 

    • Si la première colonne affichée dans une zone de liste déroulante n’est pas la colonne liée, Access restreint les entrées à la liste, même si la propriété Limiter à liste est définie sur Non.

    • Si la propriété Limiter à liste est définie sur Non, si vous saisissez une entrée qui ne figure pas dans la liste et si la zone de liste déroulante est liée, l’entrée est stockée dans le champ sous-jacent, mais elle n’est pas ajoutée à la liste. Pour ajouter de nouvelles entrées à la liste, utilisez la propriété Sur absence dans liste et l’événement Absence dans liste.

Haut de la page

Développez vos compétences
Découvrez des formations
Accédez aux nouvelles fonctionnalités en avant-première
Rejoignez le programme Office Insider

Ces informations vous ont-elles été utiles ?

Nous vous remercions pour vos commentaires.

Merci pour vos commentaires. Il serait vraisemblablement utile pour vous de contacter l’un de nos agents du support Office.

×