Variable dans une variable

Signaler
Messages postés
4
Date d'inscription
samedi 18 août 2007
Statut
Membre
Dernière intervention
19 août 2007
-
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
-
Bonjour,

comment executer une variable entreposée dans une autre variable ?

merci!

8 réponses

Messages postés
4
Date d'inscription
samedi 18 août 2007
Statut
Membre
Dernière intervention
19 août 2007

...j'ai oublié...  en vb.net
Messages postés
918
Date d'inscription
vendredi 3 août 2007
Statut
Membre
Dernière intervention
27 octobre 2008
10
J'ai peur que tu ne veuille acéder à une variable, dont le nom est dans une variable String ? C'est ca ?
Et bien si oui, VB.NET n'a pas de solution, ce n'st pas comme en Lisp.
Enfin, sous certaine condition, à savoir travail avec des objets, ca pourrait être faisable en VB.NET.
Mais brut de fonderie, je dis ... pas possible.
Messages postés
4
Date d'inscription
samedi 18 août 2007
Statut
Membre
Dernière intervention
19 août 2007

tres bien, je vais le faire autrement, merci pour la reponse rapide.


Domage que ce ne soit pas possible


a bientot
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
37
D'un autre coté, je n'en vois pas trop l'interet non plus.

Ta variable dois déjà exister dans le code pour pouvoir l'utiliser. Si elle existe tu en conais le nom, tu peux mettre celui-ci en dur sans passer par une autre variable.

Enfin, perso, depuis le temps ou je code et quelque soit le langage, je n'ai jamais ressenti le besoin d'un tel dispositif.

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
Messages postés
4
Date d'inscription
samedi 18 août 2007
Statut
Membre
Dernière intervention
19 août 2007

voici le contexte,

J'ai 10 textbox (textbox1, textbox2 etc)
x est incrementé de 1 a 10

j'aurais aimé donner une valeur aux differents textbox dans une boucle

x = 1
do while x < 11
   textbox(x).text = (une valeur assiciée a x)
   x = x + 1
loop

pour contourner, comme ma boucle n'a que 10 loop, je l'ai donc codé 10 fois.... c'est pas tres jolie, mais ca fonctionne

il y a certainement une solution en vb.net... mais telle que mentionné en rubrique... "débutant"  :-)

Claude
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
37
"...il y a certainement une solution en vb.net..."

Les groupes de controles. Mais comme ils n'existent plus en .Net il faut passer par une liste ou une collection

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
Messages postés
764
Date d'inscription
jeudi 27 juillet 2006
Statut
Membre
Dernière intervention
6 septembre 2010
18
Salut à tous

pouvez vous nous montrer l'alterative (10 lignes) ?
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
37
Déclaration de la liste en variable globale de la feuille :
Dim ListTextBox as New List(Of TextBox)

Chargement de la liste dans le form load de la feuille (en supposant que les textbox existent déjà sur la feuille)
For i as integer = 1 to 10
    ListTextBox.Add(Me.Controls("TextBox" & i))
Next

Ensuite dans le code, il suffit d'utiliser la liste comme on utiliserait un groupe de controle en VB6, par exemple :
        x = 1
        Do While x < 11
            ListTestBox(x - 1).Text = "une valeur associée a " & x
            x = x + 1
        Loop

Pour une utilisation occasionnelle (ou même une seule fois), il est possible de ne pas utiliser la liste et d'accèder aux textbox en utilisant la collection Controls de la feuille (Me.Controls("TextBox" & i)).
Mais si l'accès de cette sorte doit etre fait régulièrement et à plusieurs endroit du code, il est plus propre et plus souple d'utiliser une liste typée

---- Sevyc64  (alias Casy) ---- <hr size ="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php