Accéder à une variable à partir de son nom sous forme de chaine de caractères

fpoix Messages postés 6 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 20 février 2006 - 20 févr. 2006 à 14:39
fpoix Messages postés 6 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 20 février 2006 - 20 févr. 2006 à 16:48
Voila le problème :
j'ai un programme vb que je dois modifier, le programme existant possède un bon millier de variables publiques qui sont nommées ainsi :

public toto1 as integer
public toto2 as integer
.
.
public toto1000 as integer

je voudrais recopier ces valeurs dans un tableau

public totos(1000) as integer

comment faire ça dans une boucle autrement que la méthode suivante :
totos(1)=toto1
totos(2)=toto2
.
.
totos(1000)=toto1000

alors que je voudrais un truc du genre :
for i=1 to 1000
totos(i)=Valeur("toto" & i)
next i

j'ai essayé callbyname, varptr, objptr, ... mais je ne trouve pas

3 réponses

jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
20 févr. 2006 à 15:07
Salut,

Si tu dois modifier le programme, pourquoi ne pas te debarrasser des 1000 declarations et les remplacer par ton tableau?

et ensuite te taper (ou te programmer) un replace dans le programme de totoX par toto(X) ....

@+
Julien
Ne pas oublier: le Moteur de recherche et
Le Réponse acceptée
0
fpoix Messages postés 6 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 20 février 2006
20 févr. 2006 à 15:44
C'est plus compliqué que ça, disons donc que je n'ai pas le choix et que je dois concerver ces 1000 variables (hélas)
Fabrice
0
fpoix Messages postés 6 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 20 février 2006
20 févr. 2006 à 16:48
Ne cherchez plus, j'ai trouvé (ah, vous ne cherchiez déjà plus) !

En fait j'ai utilisé l'objet scriptcontrol et la méthode Eval et ça fonctionne

Merci pour ta réponse Julien
Fabrice
0
Rejoignez-nous