Bonjour,

[EMAIL PROTECTED] a écrit :

Bonjour,

[...]

Je pensais m'être exprimé clairement. Désolé si ça t'a ralentit.
Voici le code qui devrait te débloquer pour de bon, commenter pour comprendre paps à pas.

Sub Main
'Dimensionnement des variables
Dim monDoc as Object, maListe as Object
Dim monFormP as Object, monFormF as Object
Dim vueListe as Object, Selection as String

'Récupération de l'objet du document courant
monDoc = ThisComponent

'Récupération de l'objet nommé "FCOMMNDE" du document courant
monFormP = monDoc.DrawPage.Forms.getByName("FCOMMANDE")

'Récupération de l'objet nommé "FDETAILCOM" de mon objet monFormP
monFormF = monFormP.getByName("FDETAILCOM")

'Récupération de l'objet nommé "Liste" de mon objet monFormF
maListe = monFormF.getByName("Liste")

'Récupération de la "vue" de l'objet maListe du document courant
vueListe = monDoc.CurrentController.GetControl(maListe)

'Affichage de la sélection
MsgBox(vueListe.SelectedItem)
End Sub


Si ça ne fonctionne pas, essai déjà de fonctionner sans sous-formulaire. Met ta ListBox dans ton formulaire principal et essaie déjà d'afficher sa valeur à elle.

A bientôt,

Ludo

PS: merci de s'adresser à la liste entière pour tenter de résoudre tes soucis. Je pense, et en particulier pour la gestion des sous-formulaires, des sous-sous-formulaires, etc. qui est peu documentée, il y-a certainement des chances que ça en intéresse plus d'un. PS2: si quelqu'un peu mieux décrire l'utilité du passage par une vue du contrôle, car là, je ne maîtrise pas cet aspect des choses.

[EMAIL PROTECTED] a écrit :

Bonjour à tous.

Contexte :  sous-formulaire type table dans lequel se trouve une liste
déroulante et d'autres champs, notemment des clés primaires
Le champ dans lequel est contenue la liste s'appelle "Liste"

Ce qu'il m'est difficile à gérer est déjà le fait que la table énumère les
champs qu'elle contient, et que parmi ceux-ci j'en ai tranformé un (dans le
sous-formulaire) en liste déroulante.
Entre les déclarations ou non du formulaire auquel ce champ appartient, et
quel type de champ je dois utiliser pour obtenir la valeur de la liste, (le
type de la liste déroulante ou le type du champ tel qu'il est défini dans la
table... ?)je ne sais pas trop comment faire pour obtenir dans une variable
la valeur sélectionnée dans ma liste déroulante au format chaîne qui ensuite
doit être contrôlée dans une requête SQL....

Tous les exemples que j'ai pu trouver sur le sujet ne concernent
malheureusement pas le cas d'une liste contenue dans un sous-formulaire, la
seule chose que je sais et que l'on doit utiliser ...SelectedItemPos pour
obtenir cette fameuse variable, et çà, c'est uniquement la position du choix
effectué dans la liste, alors le reste. !

Pouvez-vous m'aider ? Merci beaucoup

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Répondre à