Pb VBA indice/sélection

Alex -  
 Eric -
Bonjour !

j'ai un problème sur l'écriture d'un code en VBA pour Excel :

Voici le bout de code :

Dim Fournisseur As String
Fournisseur = ListeFournisseur.Text (ListeFournisseur est une combobox)
Sheets("BaseDonnee").Range [A2].Value = Fournisseur

Pb : le débogueur me dit que "l'indice n'appartient pas à la sélection". Ca veut dire quoi ? et comment faire pour que mon code marche enfin ?

merci

Alex

4 réponses

Eric
 
tu peux toujours essayer.
Sheets("BaseDonnée").Range("A2").Select
ActiveCell.FormulaR1C1 = Fournisseur
Normallement ça marche mieux.

le problème, c'est l'affichage de la feuille BaseDonnée qu'il faudrait éviter.je vais me pencher sur le problême.

(Qui suis-je?).
0
maily Messages postés 7556 Date d'inscription   Statut Contributeur Dernière intervention   453
 
Bonjour...

Et bien le problème vient tout simplement du fait que l'option
ListeFournisseur.Text 
n'existe pas... En effet, une combo box, tu peux récupérer l'indice qui est en cours et ainsi récupérer le texte!
Ecris comme ça:


dim i as integer
i= ListeFournisseur.ListIndex
Fournisseur=ListeFournisseur.List(i)


Et la, normalement, cela devrait marcher!!

bon courage

Maily   :-))))
0
Alex
 
merci, beaucoup, de retour de week-end , je vais essayer tout de suite : verdict dans quelques minutes ! ;-))
0
A
 
Alors, apparemment, ça doit marcher, mais...

dans le même style , et dans le même code, j'ai aussi un champ "Marque" et "Remise" à enregistrer dans la feuille BaseDonnees. Alors, au complet, ce que j'ai écrit c'est ça :

Private Sub BtnEnregistrer_Click()
Dim Fournisseur As String
Dim Marque As String
Dim Remise As String
Dim i As Integer
Dim j As Integer
Dim k As Integer

i = ListeFournisseur.ListIndex
Fournisseur = ListeFournisseur.List(i)
j = ListeMarque.ListIndex
Marque = ListeMarque.List(j)
k = ListeRemise.ListIndex
Remise = ListeRemise.List(k)

Hide

End Sub

et là, ça affiche "objet requis".
Quid de cette erreur ?

merci...
0
Eric
 
C'est moi ... et oui pas encore pati.
L'objet requi, c'est probablement pour le Hide
Hide.Me c'est pour masquer la feuille courante (à vérifier)

Lorsque tu fais débogage,
la ligne en cause apparait en jaune,
en général ça localise très bien l'erreur.

A+
Eric
0