J'ai une base de données avec 3 tables.Comment remplir la zone de liste déroulante avec des valeurs dans MS Access 2007
Manufact: ID, Nom, decription
Modèle: ID, Manufact_ID, Nom
Ordre: ID, Manufact_ID, Model_ID, quantité, date,
Dans Access je voudrais avoir la vue de table/datasheet normale pour l'ordre qui donne la sortie suivante
ID Manufact.Name Model_ID(combo box) Quantity Date 1 LG W3000H-BN 10 02-01-2009 2 SAMSUNG SyncMaster 205BW 5 02-20-2009 3 SAMSUNG SyncMaster 206BW 2 03-18-2009 4 Iiyama ProLite E1902S-B1 1 05-13-2009
Mon problème est la zone de liste déroulante. Je veux avoir seulement la liste des modèles du fabricant sélectionné dans la liste déroulante. par exemple: uniquement les modèles SAMSUNG si SAMSUNG est sélectionné. J'ai essayé de définir la source de la ligne de consultation pour la colonne Model_ID comme
SELECT Model.ID,Model.Manufact_ID,Model.Name,Order.Manufact_ID \ FROM Model, Order WHERE Order.Manufact_ID = Model.Manufact_ID
Ce modèle est en fait un INNER JOIN ordre SUR ... donner le mauvais résultat. Comment puis-je me référer à la valeur réelle de Order.Manufact_ID dans la commande Lookup SELECT de la ligne? C'est une valeur variable que je ne peux pas stringifier.
Merci!
strauss
Si vous insistez sur une feuille de données, vous devez utiliser un formulaire. Vous ne pouvez pas faire ce que vous voulez dans une feuille de données standard. En effet, vous ne devriez pas avoir une combo intégrée dans une table. Et sur un formulaire avec plusieurs enregistrements, cela devient compliqué si LimitToList est défini sur TRUE, car le filtre de la liste de zone de liste déroulante pour l'enregistrement en cours entraînera d'autres enregistrements pour afficher des valeurs vides. –
BTW, ce problème est la raison pour laquelle je ne rends pas les formulaires et les feuilles de données continues avec des listes déroulantes modifiables - il est trop difficile de valider les données avec des listes déroulantes filtrées. –