Je vais commencer par dire que c'est la première fois que j'utilise des listboxes et que des posts antérieurs ont été critiqués pour leur manque de détails. Donc, toute l'aide est grandement appréciée et j'espère que c'est assez d'informations sans être exagéré.Access 2003 VBA: Retourne uniquement l'index du dernier élément sélectionné dans un ListBox
Actuellement, j'ai une zone de liste mettant à jour une table de jonction avec un événement on click (itère à travers les éléments sélectionnés et s'ils ne sont pas dans la table, elle les ajoute). La zone de liste est également mise à jour par un groupe d'options (en fonction de la valeur du groupe d'options, une requête remplit la liste avec les éléments appropriés et ils sont sélectionnés/mis en évidence en fonction de la table de jonction). De même, lorsque les articles sont une "sous-catégorie", la "catégorie" est également sélectionnée. Cela fonctionne parfaitement jusqu'à ce que je lui demande d'en faire plus ...
Problème 1: Je dois différencier les «catégories» d'éléments les uns des autres. J'ai donc inclus un élément vide dans la zone de liste pour ajouter un espace entre les catégories. Lorsque les éléments vides sont présents, la liste ne met pas à jour correctement la table de jonction et vice versa.
Problème 2: Mes utilisateurs veulent pouvoir désélectionner la "catégorie" dans certaines circonstances. C'est bien, il suffit de désélectionner la "catégorie" après que la "sous-catégorie" est sélectionnée. Cependant, la "catégorie" est à nouveau sélectionnée chaque fois que vous cliquez à nouveau sur la zone de liste parce qu'elle itère dans toutes les entrées.
Solution perçue pour les deux problèmes: Ne renvoyer que l'index de l'élément (de) sélectionné et le manipuler en conséquence. Est-ce possible? Si c'est le cas, comment? OU: Devrais-je adopter une approche différente?
Y a-t-il une raison impérieuse pour laquelle vous avez choisi d'utiliser une liste déroulante non liée au lieu du sous-formulaire lié normal avec des listes déroulantes? –
Surtout c'était juste la première idée que je pensais essayer ... Autres considérations: la requête remplit la liste avec un sous-ensemble d'éléments basés sur les préférences des utilisateurs particuliers. Les données doivent être stockées au même endroit, mais tous les éléments ne sont PAS applicables à tous les utilisateurs. Est-il encore possible de répliquer la propriété multiselect avec des sous-formulaires et des comboboxes? –
@ David-W-Fenton Pourriez-vous me désigner une référence pour créer le sous-formulaire lié avec des listes déroulantes comme vous le suggérez. Merci pour votre temps. –