Trouver la valeur d'une variable dont on a le nom sous forme de string

Le
Pierre Archambault
Bonjour à tous,

Cette question peut sembler incongrue mais je vous explique le contexte.

Dans un Userform, l'usager entre le nom d'une variable qui, dans le code du
programme, contient par exemple le nombre de dossiers.

À partir du Textbox contenant ce nom de variable (qui peut différer d'une
fois à l'autre) je voudrais pouvoir obtenir la valeur de cette variable.

Dans cet exemple, le nom de la variable est "NbreDossiers" et je voudrai
savoir comment coder mon programme pour que la string "NbreDossiers" soit
interprétée comme étant la variable elle-même. Bien sûr, s'il s'agissait
toujours de la même variable, je n'aurais pas ce problème mais justement,
l'utilisateur peut entrer un grand nombre de noms de variables différents.

Merci pour vos lumières.

Pierre
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Daniel.C
Le #5145931
Bonsoir.
Je crois déjà avoir suivi un fil sur ce sujet. Je crois que ce que tu
demandes n'est pas possible directement.
Par exemple :

Select Case textbox1
Case "NbreDossiers"
MsgBox NbreDossiers
End Select

Cordialement.
Daniel
"Pierre Archambault" message de news: ADroj.431$
Bonjour à tous,

Cette question peut sembler incongrue mais je vous explique le contexte.

Dans un Userform, l'usager entre le nom d'une variable qui, dans le code
du programme, contient par exemple le nombre de dossiers.

À partir du Textbox contenant ce nom de variable (qui peut différer d'une
fois à l'autre) je voudrais pouvoir obtenir la valeur de cette variable.

Dans cet exemple, le nom de la variable est "NbreDossiers" et je voudrai
savoir comment coder mon programme pour que la string "NbreDossiers" soit
interprétée comme étant la variable elle-même. Bien sûr, s'il s'agissait
toujours de la même variable, je n'aurais pas ce problème mais justement,
l'utilisateur peut entrer un grand nombre de noms de variables différents.

Merci pour vos lumières.

Pierre




LSteph
Le #5145901
Bonsoir,
Sorte de contournement avec une collection+j'ai choisi un combo plutôt
que de risquer de taper dans un textbox un truc qui ne correspondrait pas..

--
lSteph

Dim mesVars As New Collection
Private Sub ComboBox1_Change()
Label1 = mesVars(ComboBox1)
End Sub

Private Sub UserForm_Initialize()
Dim i As Integer
mesVars.Add 7, "NBD"
mesVars.Add 14, "MaxD"
ComboBox1.AddItem "NBD"
ComboBox1.AddItem "MaxD"

End Sub

Bonjour à tous,

Cette question peut sembler incongrue mais je vous explique le contexte.

Dans un Userform, l'usager entre le nom d'une variable qui, dans le code du
programme, contient par exemple le nombre de dossiers.



Pierre Archambault
Le #5145311
Merci quand même, ça me permet de cesser de chercher à résoudre la
quadrature du cercle.

Je crois que je vais mettre dans un combo les différentes possibilités et
dans le code, les variables associées. Selon le choix de l'utilisateur, un
Select Case fera exécuter telle ou telle partie du code. Dommage, j'aurais
bien aimé résoudre ce problème avec une idée de génie...

Je vous remercie d'avoir pris le temps de me répondre.

Pierre


"Pierre Archambault" message de news: ADroj.431$
Bonjour à tous,

Cette question peut sembler incongrue mais je vous explique le contexte.

Dans un Userform, l'usager entre le nom d'une variable qui, dans le code
du programme, contient par exemple le nombre de dossiers.

À partir du Textbox contenant ce nom de variable (qui peut différer d'une
fois à l'autre) je voudrais pouvoir obtenir la valeur de cette variable.

Dans cet exemple, le nom de la variable est "NbreDossiers" et je voudrai
savoir comment coder mon programme pour que la string "NbreDossiers" soit
interprétée comme étant la variable elle-même. Bien sûr, s'il s'agissait
toujours de la même variable, je n'aurais pas ce problème mais justement,
l'utilisateur peut entrer un grand nombre de noms de variables différents.

Merci pour vos lumières.

Pierre




Publicité
Poster une réponse
Anonyme