Combobox et tableau [Résolu]

canichon 50 Messages postés vendredi 7 juillet 2006Date d'inscription 2 septembre 2009 Dernière intervention - 21 mars 2007 à 14:29 - Dernière réponse : canichon 50 Messages postés vendredi 7 juillet 2006Date d'inscription 2 septembre 2009 Dernière intervention
- 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

drikce06 2247 Messages postés lundi 29 mai 2006Date d'inscription 29 mai 2008 Dernière intervention - 21 mars 2007 à 14:42
+3
Utile
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:
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de drikce06
jmfmarques 7668 Messages postés samedi 5 novembre 2005Date d'inscription 22 août 2014 Dernière intervention - 21 mars 2007 à 14:42
+3
Utile
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....
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de jmfmarques
jmfmarques 7668 Messages postés samedi 5 novembre 2005Date d'inscription 22 août 2014 Dernière intervention - 21 mars 2007 à 14:43
+3
Utile
Ah !...
Salut Drikce (tu m'as battu de 3 secondes )
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de jmfmarques
drikce06 2247 Messages postés lundi 29 mai 2006Date d'inscription 29 mai 2008 Dernière intervention - 21 mars 2007 à 14:45
+3
Utile
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:
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de drikce06
drikce06 2247 Messages postés lundi 29 mai 2006Date d'inscription 29 mai 2008 Dernière intervention - 21 mars 2007 à 14:46
+3
Utile
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:
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de drikce06
drikce06 2247 Messages postés lundi 29 mai 2006Date d'inscription 29 mai 2008 Dernière intervention - 21 mars 2007 à 14:49
+3
Utile
[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:
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de drikce06
canichon 50 Messages postés vendredi 7 juillet 2006Date d'inscription 2 septembre 2009 Dernière intervention - 21 mars 2007 à 14:52
0
Utile
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.