Variable dans boucle for

Résolu
mamanmarsu Messages postés 4 Date d'inscription mercredi 28 février 2007 Statut Membre Dernière intervention 28 février 2007 - 28 févr. 2007 à 15:13
cs_jamal_ho Messages postés 1 Date d'inscription mercredi 7 mars 2007 Statut Membre Dernière intervention 9 mars 2007 - 9 mars 2007 à 10:28
J'ai 4 nom de variables qui ne se différencient que par la fin de leur nom car elles sont indicées.
var1
var2
var3
var4

J'aimerai utiliser une boucle simple pour faire appelle successivement aux 4 variables. Je sais que ça ne fonctionne pas comme dans mon exemple (var & str(i)), je sais que la solution des tableaux est une meilleure solution mais je souhaite tout de même savoir s'il est possible de se passer d'un tableau. Ce n'est pas la première fois que je me pose cette question, alors si je pouvais avoir la solution.... merci !

for i=1 to 4
   ' avec une ligne du type :
    var & str(i) = valeurfonction(i)  'ce n'est qu'un exemple...
next i

6 réponses

cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
28 févr. 2007 à 15:23
Si tu as déjà posé la question alors tu as certainement déjà eu la réponse.

Non il n'y a d'autres solutions que le tableau (ou la collection, ce qui revient à faire un tableau contenant tes variables, peu judicieux dans le cas présent).

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #
3
fred.toto Messages postés 73 Date d'inscription mardi 10 avril 2001 Statut Membre Dernière intervention 4 mars 2009
28 févr. 2007 à 15:24
Salut,
ya un truc que je comprends pas, tu comptes faire quoi avec tes 4 variables et/ou leurs valeurs?
Ce qui est sur c'est que le var & str(i) ne marche pas
0
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
28 févr. 2007 à 15:25
Tu l'as dit toi-même : il n'est pas possible de se référer à une variable en utilisant une chaîne de caractères représentant son nom.
Alors : tableau ou structure.ou (plus lourd) select case.
0
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
28 févr. 2007 à 15:25
Salut,

absolument d'accord avec Casy, ta seule alternative est le tableau de données.
Exemple lié au tiens :

Dim var(1 to 4) As String
Dim i as Byte

For i = 1 To 4
    var(i) = valeurfonction(i)
Next i

@++

<hr size="2" width="100%" />
  --Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
<!--
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
mamanmarsu Messages postés 4 Date d'inscription mercredi 28 février 2007 Statut Membre Dernière intervention 28 février 2007
28 févr. 2007 à 15:36
Merci,


En fait je voulais juste avoir la confirmation qu'il n'y avait pas d'autres solutions. Je trouvais que l'autre solution, si elle avait existée, aurait été plus rapide que l'utilisation d'un tableau allant de 1 à 4. Parfois je crois qu'il y a des meilleures solutions que celles que j'utilise habituellement !!!! Mais ce n'est pas toujours le cas ! 
0
cs_jamal_ho Messages postés 1 Date d'inscription mercredi 7 mars 2007 Statut Membre Dernière intervention 9 mars 2007
9 mars 2007 à 10:28
la boucle for repette les instrions un certain nombre de fois et qui generalse et simplifie l'ecriture de nombeuses instruction dans le code


 


exemle


dim x(10) as integer


dim i ,s as integer


for i=1 to 10 


x(i)=inputbox("taper un nombre")


s=s+val(x(i)


label1.caption=s


 


 
0
Rejoignez-nous