Personnaliser une zone de liste, une zone de liste modifiable ou une zone de liste déroulante

  1. En mode Création (mode Création : fenêtre qui présente la création des objets de base de données suivants : tables, requêtes, formulaires, états et macros. En mode Création, vous pouvez créer de nouveaux objets de base de données et modifier la structure d’objets existants.) du formulaire ou de la page d'accès aux données, vérifiez que la zone de liste (zone de liste : contrôle qui fournit une liste de choix. Une zone de liste est constituée d’une liste et d’une étiquette facultative.), zone de liste modifiable (zone de liste modifiable : contrôle, utilisé dans un formulaire, qui fournit une zone de liste et une zone de texte. Vous pouvez taper une valeur ou cliquer sur le contrôle pour afficher une liste et y sélectionner un élément.) ou zone de liste déroulante (zone de liste déroulante : contrôle d’une page d’accès aux données qui, lorsque l’utilisateur clique sur celui-ci, affiche une liste à partir de laquelle une valeur peut être sélectionnée. Il est impossible de taper une valeur dans une zone de liste déroulante.) est sélectionnée, puis cliquez sur Propriétés Image du bouton dans la barre d'outils pour ouvrir la feuille de propriétés du contrôle (contrôle : objet d’interface utilisateur graphique, comme une zone de texte, une case à cocher, une barre de défilement ou un bouton de commande, qui permet aux utilisateurs de contrôler le programme. Vous pouvez utiliser des contrôles pour afficher des données ou des choix, effectuer une action ou rendre l’interface utilisateur plus lisible.).
  2. Exécutez l'une des procédures suivantes :

Modifiez l'ordre de tri dans une zone de liste, une zone de liste modifiable ou une zone de liste déroulante

Si vous avez utilisé un Assistant pour créer la zone de liste, la zone de liste déroulante ou la zone de liste modifiable, Microsoft Access trie automatiquement les lignes qui composent la liste en fonction de la première colonne visible. Si vous voulez spécifier un ordre de tri différent, ou si vous avez défini la propriété Contenu du contrôle en tant que requête enregistrée, vous pouvez utiliser une des deux procédures suivantes.

 Remarque   Aucun Assistant n'est disponible dans une page d'accès aux données, ou une page d'accès aux données qui pointe vers une base de données différente de celle qui est ouverte. Dans ce cas, vous devez créer vous-même la zone de liste ou la zone de liste déroulante.

  • Pour modifier l'ordre de tri d'un contrôle dans un formulaire, cliquez sur l'onglet Données, puis, en regard de la zone de propriétés Contenu, cliquez sur le bouton GénérerImage du bouton pour ouvrir le Générateur de requête ou le Générateur d'instruction SQL, puis spécifiez l'ordre de tri de votre choix.
  • Pour modifier l'ordre de tri d'un contrôle dans une page d'accès aux données, créez une requête avec l'ordre de tri souhaité puis, dans la zone de propriété ListRowSource de la page d'accès aux données, sélectionnez cette requête.

Lier une colonne d'une zone de liste, d'une zone de liste modifiable ou d'une zone de liste déroulante

  • Dans un formulaire       Dans la zone de propriété ColonneLiée (BoundColumn) de la zone de liste ou de la zone de liste modifiable, spécifiez un nombre qui correspond à la position de la colonne dans la zone de liste ou la zone de liste modifiable. Tapez, par exemple,1 pour associer la première colonne de la zone de liste ou de la zone de liste modifiable au champ sous-jacent spécifié dans la propriété SourceContrôle (ControlSource). Incluez les colonnes masquées lorsque vous comptez des colonnes.

Si vous attribuez la valeur 0 à la propriété ColonneLiée (BoundColumn), Microsoft Access enregistre l'index de liste (index de liste : séquence de nombres correspondant aux éléments d’une liste, en commençant à 0 pour le premier élément, en affectant 1 au deuxième élément, et ainsi de suite.) plutôt que la valeur d'une des colonnes. Ceci est particulièrement utile pour stocker une séquence de nombres au lieu de la liste des valeurs.

  • Dans une page d'accès aux données       Dans la zone de propriété ListeChampDépendant (ListBoundField) de la zone de liste ou de la zone de liste déroulante, entrez le nom du champ qui correspond à la position de la colonne dans la zone de liste ou la zone de liste déroulante.

Utiliser une instruction SQL comme contenu d'une zone de liste ou d'une zone de liste modifiable dans un formulaire

Il est possible que vous souhaitiez utiliser une instruction SQL (instruction/chaîne SQL : expression qui définit une commande SQL, telles que SELECT, UPDATE ou DELETE, et qui inclut des clauses telles que WHERE et ORDER BY. Les instructions/chaînes SQL sont généralement utilisées dans des requêtes et dans des fonctions de regroupement.) plutôt qu'une requête enregistrée pour la source de ligne d'une zone de liste ou d'une zone de liste modifiable dans un formulaire afin que la requête ne s'affiche pas dans la fenêtre Base de données (fenêtre Base de données : dans Access 2003 et versions antérieures, fenêtre qui s’affiche lorsque vous ouvrez une base de données ou un projet. Elle contient des raccourcis destinés à créer de nouveaux objets de base de données et à ouvrir des objets existants. Dans les versions ultérieures, elle est remplacée par le volet Navigation.). Toutefois, les zones de liste et les zones de liste modifiable générées à partir d'instructions SQL sont plus lentes que celles qui le sont à partir de requêtes enregistrées.

  1. Cliquez sur le bouton Générer Image du bouton en regard de la propriété Contenu pour ouvrir le Générateur de requêtes.
  2. Dans le Concepteur de requête, cliquez sur Mode SQL dans le menu Affichage.
  3. Dans la fenêtre SQL, sélectionnez entièrement l'instruction SQL, puis appuyez sur CTRL+C pour la copier. Fermez le Concepteur de requête.
  4. Cliquez dans la zone de propriété Contenu (RowSource), puis appuyez sur CTRL+V pour coller l'instruction dans la zone de propriété.
  5. Supprimez la requête initiale dans la fenêtre Base de données.

Masquer une colonne dans une zone de liste ou une zone de liste modifiable sur un formulaire

  • Dans la zone de propriété LargeurColonnes (ColumnWidths), tapez 0 pour la ou les colonnes à masquer.

Prenons l'exemple d'une zone de liste modifiable à deux colonnes, l'une intitulée N° fournisseur et l'autre Fournisseur. La colonne N° fournisseur est la première colonne de la liste. Pour masquer cette dernière, définissez la propriété LargeurColonnes (ColumnWidths) comme dans l'illustration suivante :

Masquer les colonnes à l'aide de la propriété LargeurColonnes (ColumnWidths)

Légende 1   Attribuez la valeur 0 à la colonne N° fournisseur (la première) pour la masquer.

Légende 2   Spécifiez une largeur pour la colonne Fournisseur.

Légende 3   La colonne N° fournisseur constitue la colonne dépendante, même si elle est masquée.

 Remarque   Dans une zone de liste modifiable, la première colonne visible est affichée dans la partie zone de texte de la zone de liste modifiable lorsque la liste n'apparaît pas. Par exemple, la colonne Fournisseur dans l'exemple précédent s'affichera parce que la colonne N° fournisseur est masquée. Si ce n'est pas le cas, seule la colonne N° fournisseur apparaîtra.

Ajouter les en-têtes de colonne à une zone de liste modifiable sur un formulaire

  • Dans la zone de propriété En-têtesColonnes (ColumnHeads), cliquez sur Oui pour afficher les en-têtes des colonnes. Les en-têtes des zones de liste modifiable apparaissent uniquement lorsque la liste est ouverte.

Si la zone de liste modifiable ou la zone de liste est basée sur une source d'enregistrements (source d’enregistrement : source de données sous-jacente d’un formulaire, d’un état ou d’une page d’accès aux données. Dans une base de données Access, il peut s’agir d’une table, d’une requête ou d’une instruction SQL. Dans un projet Access, il peut s’agir d’une table, d’une vue, d’une instruction SQL ou d’une procédure stockée.), Microsoft Access utilise les noms de champ de cette source d'enregistrements comme en-têtes de colonnes. Si la zone de liste modifiable ou la zone de liste est basée sur une liste de valeurs fixes, Microsoft Access utilise les x premiers éléments de données de la liste de valeurs (propriété Contenu (RowSource)) comme en-têtes de colonnes, x étant le nombre défini dans la propriété NbreColonnes (ColumnCount).

Désactiver la faculté de remplissage en cours de frappe pour une zone de liste modifiable dans un formulaire

  • Dans la zone de propriété AutoÉtendre (AutoExpand), cliquez sur Non.

Lorsque Non est attribué à la propriété AutoÉtendre (AutoExpand), vous devez sélectionner une valeur dans la liste ou la taper entièrement.

Définir la largeur de la partie zone de liste d'une zone de liste modifiable dans un formulaire

  • Dans la zone de propriété LargeurListe (ListWidth), tapez la largeur souhaitée en utilisant l'unité de mesure en cours (définie dans le Panneau de configuration de Windows). Pour utiliser une autre unité de mesure que celle qui est définie par défaut, insérez un indicateur de mesure. Par exemple, tapez 2 cm. Assurez-vous de conserver un espace suffisant pour une barre de défilement.

La largeur de la partie zone de liste d'une zone de liste modifiable peut être supérieure, mais jamais inférieure à la partie zone de texte. Le paramètre par défaut (Auto) attribue à la zone de liste la largeur de la partie zone de texte de la zone de liste modifiable.

Définir le nombre maximal de lignes qu'une zone de liste modifiable peut afficher dans un formulaire

  • Dans la zone de propriété LignesAffichées (ListRows), tapez un nombre.

Si le nombre de lignes effectives dépasse le nombre défini par le paramétrage de la propriété LignesAffichées (ListRows), une barre de défilement verticale s'affiche dans la zone de liste modifiable.

Limiter les entrées de zone de liste modifiable aux éléments d'une partie de liste d'une zone de liste modifiable sur un formulaire

  • Dans la zone de propriété LimiterAListe (LimitToList), cliquez sur Oui.

Remarques

Si la première colonne affichée dans une zone de liste modifiable n'est pas la colonne liée (contrôle dépendant : contrôle utilisé dans un formulaire, un état ou une page d’accès aux données pour afficher ou modifier des données issues d’une table, d’une requête ou d’une instruction SQL. La propriété ControlSource du contrôle stocke le nom du champ auquel il est lié.), Microsoft Access limite les entrées aux éléments de la liste même si Non est attribué à la propriété LimiterAListe (LimitToList).

Lorsque Non est attribué à la propriété LimiterAListe (LimitToList) et que vous tapez une valeur qui ne figure pas dans la liste, si la zone de liste modifiable est dépendante, l'entrée est stockée dans le champ sous-jacent mais n'est pas ajoutée à la liste. Pour ajouter de nouvelles entrées à la liste, utilisez la propriété SurAbsenceDansListe (OnNotInList) et l'événement AbsenceDansListe (NotInList).

 
 
S'applique à :
Access 2003