Combobox et tableau [Résolu]

Messages postés
50
Date d'inscription
vendredi 7 juillet 2006
Dernière intervention
2 septembre 2009
- - Dernière réponse : canichon
Messages postés
50
Date d'inscription
vendredi 7 juillet 2006
Dernière intervention
2 septembre 2009
- 21 mars 2007 à 14:52
Bonjour a tous,

Voilà j'ai créé un forms avec 3 combobox identiques.

Pour éviter, par exemple, l'initialisation de chaque combobox séparément, j'ai créé un tableau de combobox et une boucle d'initialisation mais ça ne fonctionne pas...

Ci joint, mon bout de programme :

Dim tabitem(1 To 3) As ComboBox

tabitem(1) = typeitem.CB11
tabitem(2) = typeitem.CB12
tabitem(3) = typeitem.CB13

où typeitem est mon forms et CB11, CB12 et CB13 mes 3 combobox...

l'erreur est la suivante :

Run-time error '91'
Object variable or With block variable not set

Quand je met un "watch" sur mon tableau, il me met bien les 3 expression du tableau de type : Combobox mais dans la colonne value : Nothing !!!

Merci pour votre aide

<!-- / message -->
Afficher la suite 

Votre réponse

7 réponses

Meilleure réponse
Messages postés
2247
Date d'inscription
lundi 29 mai 2006
Dernière intervention
29 mai 2008
3
Merci
Salut en clickant sur aide de la fenêtre d'erreur ça devari donner ça:

Dim tableau(1 To 3) As ComboBox


Set tableau(1) = Form1.ComboBox1
Set tableau(2) = Form1.ComboBox2
Set tableau(3) = Form1.ComboBox3

 Drikce 06

Si la réponse vous convient: Réponse acceptée. Si la réponse vous convient pas:

Merci drikce06 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 97 internautes ce mois-ci

Commenter la réponse de drikce06
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Dernière intervention
22 août 2014
3
Merci
Salut;

voilà comment on attribue des contrôles à un tableau :

  ReDim sauve(5) As Control ' à 5, donc, pour 6 contrôles
   Set sauve(0) = text1
   Set sauve(1) = text3
   Set sauve(2) = Check1
   Set sauve(3) = Check2
   Set sauve(4) = Option1
   Set sauve(5) = Option2

Pas difficile, il me semble....

Merci jmfmarques 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 97 internautes ce mois-ci

Commenter la réponse de jmfmarques
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Dernière intervention
22 août 2014
3
Merci
Ah !...
Salut Drikce (tu m'as battu de 3 secondes )

Merci jmfmarques 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 97 internautes ce mois-ci

Commenter la réponse de jmfmarques
Messages postés
2247
Date d'inscription
lundi 29 mai 2006
Dernière intervention
29 mai 2008
3
Merci
Et un petit exemple pour que la liste soit la même dans les trois!

Private Sub CommandButton1_Click()


Dim tableau(1 To 3) As ComboBox


Set tableau(1) = UserForm1.ComboBox1
Set tableau(2) = UserForm1.ComboBox2
Set tableau(3) = UserForm1.ComboBox3


For i = 1 To 3


tableau(i).AddItem "toto"
tableau(i).AddItem "tata"
tableau(i).AddItem "titi"


Next


End Sub

 Drikce 06

Si la réponse vous convient: Réponse acceptée. Si la réponse vous convient pas:

Merci drikce06 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 97 internautes ce mois-ci

Commenter la réponse de drikce06
Messages postés
2247
Date d'inscription
lundi 29 mai 2006
Dernière intervention
29 mai 2008
3
Merci
lol! jmfmarques, je viens de voir ça!

 Drikce 06

Si la réponse vous convient: Réponse acceptée. Si la réponse vous convient pas:

Merci drikce06 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 97 internautes ce mois-ci

Commenter la réponse de drikce06
Messages postés
2247
Date d'inscription
lundi 29 mai 2006
Dernière intervention
29 mai 2008
3
Merci
[javascript:hhobj_3.Click()
variable objet

]
s'effectue en deux temps. Vous devez d'abord déclarer la variable objet. Il faut ensuite affecter une référence valide à la variable objet à l'aide de l'instruction Set. De même, un bloc With...End With doit être initialisé en exécutant le point d'entrée de l'instruction With. Causes et solutions de cette erreur :

Vous avez tenté d'utiliser une variable objet ne faisant pas encore référence à un objet valide. Spécifiez ou respécifiez une référence pour la variable objet. Par exemple, si l'instruction Set est omise dans le code suivant, une erreur sera générée lors d'une référence à
MyObject
 :
Dim MyObject As Object    ' Crée une variable objet.



Set MyObject = Sheets(1)    ' Crée une référence d'objet valide.

MyCount = MyObject.Count    ' Affecte valeur de compte à MyCount.














 



Drikce 06

Si la réponse vous convient:


Réponse acceptée.

Si la réponse vous convient pas:

Merci drikce06 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 97 internautes ce mois-ci

Commenter la réponse de drikce06
Messages postés
50
Date d'inscription
vendredi 7 juillet 2006
Dernière intervention
2 septembre 2009
0
Merci
Messieurs,

VOUS ETES LES MEILLEURS...

MERCI
Commenter la réponse de canichon

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.