Utiliser la procedure ComboBox_Change comme Public

Bonjour,

Je suis en train de m’arracher les cheveux (ceux qu'ils me restent) sur un problème relativement simple je pense...

Environnement :

Dans une Userform que j'ai créée, une ComboBox permet la selection de différent items ranger dans une feuille Excel et affiche ces éléments dans une listbox multicolonne sur la même userform.

Objectif :

Afin d'éviter de reboucler une nouvelle fois dans la feuille excel, je souhaite sauvegarder les numéros de lignes de la feuille excel correspondant à l'affichage de la ListBox dans un tableau Public (Réutilisé a un autre endroit de la userform)

Mon Problème :

Je ne peux pas déclarer la procédure comboBox_Change() comme public et donc récupérer mes valeurs du tableau

J'ai essayer de bidouiller plusieurs solutions qui ont échouées et je suis à cours d'idée...

Qq1 peut il m'aider svp

Merci d'avance

Bonjour,

Il te faut passer par une variable publique ! Deux possibilités, ou tu la déclare dans un module standard ou, si tu ne veux pas utiliser de module standard, dans le module de la Form de cette façon (en tête de module) :

Public Index As Long

Tu en récupère la valeur comme ça :

Private Sub ComboBox1_Change()

    Index = ComboBox1.ListIndex

End Sub

Que tu utilise de cette façon ailleurs :

MsgBox UserForm1.Index

Dans ce cas, la variable est considérée comme une propriété de la Form.

Attention, sa portée est limitée à l'activation de la Form, si tu fermes cette dernière, la variable est remise à 0 ! Si tu as besoin d'avoir accès à cette variable une fois la Form fermée, tu dois passer par une variable déclarée dans un module standard ou éventuellement dans le module du classeur.

Rechercher des sujets similaires à "utiliser procedure combobox change comme public"