Comment initialiser 100 variables rapidement

Comment initialiser 100 variables rapidement - VB/VBA/VBS - Programmation

Marsh Posté le 29-11-2004 à 09:02:57    

Bonjour,
J'ai 100 variables du style champ1 --> champ100 à initialiser.
Est-il possible de faire une boucle pour remplir les variables .
Du style :
i=0
j=0
Do
i=i+1
j=j+5
(Champ & i) = j    (Champ&i representerait la variable Champ1->Champ100)
loop until i = 100
Merci

Reply

Marsh Posté le 29-11-2004 à 09:02:57   

Reply

Marsh Posté le 29-11-2004 à 16:59:27    

utilise plutot un tableau champ(n)
 
Dim champ(100)
...
 champ(i)=j
...

Reply

Marsh Posté le 09-12-2004 à 16:40:46    

dim i as byte
dim j as integer
dim champ(100) as integer
 
for i=0 to 99
   champ(i)=j
   j=j+5
next i


Message édité par mick1884 le 09-12-2004 à 16:42:40

---------------
Le programme et toujours piratable, quelqu'en soit l'auteur, un autre homme le contournera...
Reply

Marsh Posté le 14-12-2004 à 11:42:58    

Merci, c'est exactement ce qu'il me fallait.

Reply

Marsh Posté le 14-12-2004 à 12:52:14    

Et si ma variable est une combobox que je veux faire varier de 1 à 10?
Exemple ComboBox1 --> ComboBox10

Reply

Marsh Posté le 14-12-2004 à 13:52:26    

ben tu fais un tableau de ComboBox :spamafote:


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 14-12-2004 à 15:23:33    

et si tu es en VB tu peut faire des index : ComboBox(0) ... ComboBox(i)

Reply

Marsh Posté le 14-12-2004 à 16:19:43    

Pouvez-vous développer?
Merci

Reply

Marsh Posté le 14-12-2004 à 18:44:03    

si tu est en visual basic ( je croit qu'en VBA ca ne marche pas ) tu crée un combobox, tu le copie et le colle sur la meme form et VB te demande si tu veux créer un "groupe de controle", comme ca tu auras :
 
combobox(0)
combobox(1)
combobox(2)
 
..etc que tu pourras adresser par combobox(i)

Reply

Marsh Posté le 15-12-2004 à 11:14:32    

Je suis en VBA et ça ne marche pas.

Reply

Marsh Posté le 15-12-2004 à 11:14:32   

Reply

Marsh Posté le 15-12-2004 à 14:27:29    

Effectivement, les arrays de contrôles ne sont pas prévus en VBA.  Peut-être peux-tu accéder à une propriété nommée Controls, et intégrée à ta feuille? Car à ce moment là, tu peux accéder au contrôle que tu veux via son nom (sous forme de String donc). Je te laisse imaginer comment tu peux faire ta boucle ;)


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
Reply

Marsh Posté le 16-12-2004 à 09:19:46    

Après des heures de recherche, voici enfin la solution :
Dim i As Byte
For i = 1 To 8
UserForm1.Controls("ComboBox" & i) = "..."
Next i

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed