bonjour,
je gères les menus d'une application à partir d'une base access.
la table des item des menus comporte les attributs suivant :
- numéro d'ordre de l'item (déclaré en format texte)
- Libellé de l'item (déclaré en format texte)
- nom de la feuille associée à l'item (décalré en format texte)
en debut de programme, je stocke à partir du résultat d'une requête dans 3 tableaux dynamiques (1 par attribut de la table) l'ensemble des caractéristiques des item.
valeurs à titre d'exemple
Tabitem(1) = "1"
Tabitem(2) = "2"
TabLibel(1) = " - Choix numéro 1"
TabLibel(2) = " - Choix numéro 2"
TabFrm(1) = "Feuille1"
TabFrm(2) = "Feuille2"
J'affiche correctement, sur ma feuille principale, les numéros d'item et les libellés associés.
si l'utilisateur choisi l'item 1, je dois montrer la feuille "feuille1". (Les feuilles "feuille1", "feuille2" ... sont présentes dans le projet.)
pour cela j'ai déclaré une variable Frm
Dim Frm as Form
Set Frm = tabFrm(I) (avec I égal au choix effectué par l'utilisateur)
Frm.show
Ce code pose problème puisque je récupère une chaine et non un objet comme valeur de TabFrm(I). En déclarant le tableau TabFrm comme une 'collection' de Form, j'ai un message d'erreur 'impossible de modifier une valeur en lecture seule'
pouvez vous m'indiquer une piste de résolution
merci et meilleurs voeus à tous
Partager