Erreur de Compilation et ListBox ActiveX

Bonjour à tous,

Je fais appel à votre aide sur une erreur au lancement de mon fichier excel.

Dans le cadre de mon projet, je dois créer un fichier de suivi de création de document.

Celui-ci comprendra de très nombreux sites industriels et des options.

il a pour but de permettre la cration d'une masse documentaire. Cela offre l’intérêt d'une inertie le temps de connaitre tous les documents à faire.

En exemple, si je mets qu'un doc les stats seront rapidement à 100% Mais avec cette masse, je peux impacter ce %.

Sans trop rentrer dans les détails, je suis contraint de créer à l'aide de listbox ActiveX une Segment (type TCD).

Ainsi, je pourrais filtrer mon TCD suivant les lieux et options cochés.

Le code marche très bien (désolé je n'ai pas déclaré mes variables).

Mais à chaque démarrage, j'ai le droit au bug ci-joint.

Pouvez-vous m'aider, svp?

Merci par avance

PS: Je suis sur Excel 2010.

capture erreur
7classeur3.xlsm (42.26 Ko)

Bonjour,

il te dit simplement que .Column n'existe pas pour une ListBox. Tu ne peux que le croire.

Si s'en est une multi-colonne tu ne peux l'alimenter qu'avec .AddItem, élément par élément.

eric

Bonsoir Eriiic,

Merci pour ta réponse.

J'ai testé ta proposition en remlaçant le Column par AddItem et malheursement les 2 situations suivantes se produisent:

  • Au démarrage j'ai toujours le même bug (qui surligne en bleu un ce passage du code),
  • Ma macro ne marche plus et m'indique le message suivant "Affectation à une constante non autorisée",

Dans mon cas, cette listbox n'a qu'une seule colonne.

Si tu as d'autres idées je suis preneur.

Merci

J'ai testé ta proposition en remlaçant le Column par AddItem

j'ai dit ça où ? C'est très loin de ce que j'ai écrit...

Là je te conseille de faire F1 sur AddItem, et aller sur google si ça ne suffit pas.

Programmer ne s'improvise pas et nécessite un apprentissage.

Peu de chance d'y arriver en allant au hasard

eric

Bonjour,

Apprenez à utiliser le code relatif à un tableau structuré, ce qui donne un code beaucoup plus simple :

 
Private Sub MAJ_ListBox2()

    Colonne = ListBox1.Value
    Call Liste_Option

End Sub

Sub Liste_Option()
    Dim tableau1 As ListObject

    Set tableau1 = Me.[tableau1].ListObject
    Me.ListBox2.List = tableau1.ListColumns(Colonne).DataBodyRange.Value

End Sub
Rechercher des sujets similaires à "erreur compilation listbox activex"