[access] Definir une cle dans une vue?

Fermé
axys - 28 mars 2009 à 16:00
 axys - 6 avril 2009 à 18:29
Bonjour,

Je vous explique mon problème.
Pour alimenter une listbox sous access (2007, mais je travaille sur une base 2003), j'ai créé un requête renvoyant les champs Id, Nom
Le but du jeux pour moi, c'est d'afficher le nom, mais de faire en sorte que la valeur prise par le champs Me.list1 soit l'ID
En gros, je souhaite utiliser ma requête comme une table avec une clé primaire. Est il possible de déclarer qu'un champ renvoyé par une requête est une clé primaire pour cette vue?

Qque chose comme select Id as primaryKey, nom from Matiere where....
Bien sur ca marche pas, mais c'est l'idée ^^

Est ce que quelqu'un sait si c'est possible, et comment faire?
Merci d'avance
Axys
A voir également:

2 réponses

incaout Messages postés 347 Date d'inscription lundi 8 septembre 2008 Statut Membre Dernière intervention 15 novembre 2012 74
28 mars 2009 à 20:03
Bonsoir,

je ne sais pas si c pareil sous Access 2007, mais sous access 2000, il suffit de définir les propriétés de la listbox pour que la colonne liée soit la première celle où s'affiche l'id. Ensuite dans la largeur des colonnes, tu mets 0 pour la première et le reste de la largeur de liste disponible pour la deuxième. ex : 0cm;5cm.

Ta liste n'affichera que les noms des personnes (colonne 2) mais quand tu cliqueras sur une ligne, elle te renverra dans listbox.value la valeur de l'id de la personne sélectionnée.

J'espère que cela marchera pour toi.

Cdlt

IC
0
MErci à toi incaout
En fait, en suivant tes conseils, je suis allé me balader dans les propriétés.
Si je mettais en œuvre tes conseils, cela marchait, mais le champ de la liste box restait vide ( il n'affichait que la première colonne, de largeur 0cm Oo)
Du coup, j'ai laissé le nom en 1ere colonne, l'id en colonne 2, et j'ai mis la propriété colonne associée à 2.
Et miracle, ça marche !

Merci pour le coup de main ^^
0