Comment initialiser 100 variables rapidement - VB/VBA/VBS - Programmation
Marsh Posté le 29-11-2004 à 16:59:27
utilise plutot un tableau champ(n)
Dim champ(100)
...
champ(i)=j
...
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
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
Marsh Posté le 14-12-2004 à 13:52:26
ben tu fais un tableau de ComboBox
Marsh Posté le 14-12-2004 à 15:23:33
et si tu es en VB tu peut faire des index : ComboBox(0) ... ComboBox(i)
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)
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
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
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