Transformer un texte en nom de variable

Signaler
Messages postés
3
Date d'inscription
jeudi 2 juillet 2009
Statut
Membre
Dernière intervention
2 juillet 2009
-
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
-
Bonjour,

Je voudrais pouvoir utiliser un texte pour appeler une variable du même nom

Exemple, si j'ai :
var1 = "a"
var2 = "d"
alors je voudrais pouvoir répondre le texte qu'il y a dans la variable nommée ad

Merci d'avance

6 réponses

Messages postés
2814
Date d'inscription
mardi 15 avril 2003
Statut
Membre
Dernière intervention
2 juin 2020
37
Bonjour,

Je ne comprend pas bien la question... Répondre un texte ?

je dirais Var1 & Var2 tout simplement...

Si ce n'est pas ce que tu recheche merci de détailler un peu plus ta question.

Mayzz.

                                                                              
Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer. <
Messages postés
3
Date d'inscription
jeudi 2 juillet 2009
Statut
Membre
Dernière intervention
2 juillet 2009

oui mais var1 & var2 va donner "ad" (une chaîne de texte)
or je voudrais accéder au contenu de la variable dont le nom est ad
merci,
gautier
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
46
salut,

ceci est faisable en PHP
$truc = 'machin',
$machin = 'bonjour';

$$truc va renvoyer 'bonjour';

mais ceci n'est pas faisable en VB!

explique nous quel est ton but final, on pourra peut-être t'aider à ... t'en passer proprement ^^

<hr size="2" width="100%" />
Messages postés
2814
Date d'inscription
mardi 15 avril 2003
Statut
Membre
Dernière intervention
2 juin 2020
37
Bien tu ne peux pas car cette vairable n'existe pas, tu as une variable Var1 qui contient "a" et une Var2 contenant "d", ce sont des valeurs et non des variable il ne faut pas tout confondre...

                                                                              
Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer. <
Messages postés
3
Date d'inscription
jeudi 2 juillet 2009
Statut
Membre
Dernière intervention
2 juillet 2009

merci pour vos réponses, je comprends qu'il est impossible de passer d'une valeur chaîne au contenu de la variable qui porte le nom de cette chaîne en vba.
je voudrais simplement que quand l'utilisateur rentre une lettre dans une cellule de la première colonne
exemple : "a", les cellules suivantes se remplissent avec les variables a2, a3, a4

pour l'instant je fais un select case sur la valeur entrée et j'indique manuellement les valeurs à rentrer dans les cellules suivantes :

Select Case LCase(Target.Value)
             Case 1
                Cells(Target.Row, Target.Column).Value = a1
                Cells(Target.Row, colchiffre).Value = va1
                Cells(Target.Row, colcontACT).Value = ca1
              Case 2 .....
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
46
n'utilises pas des variables "a1 a2 a3" mais une collection indexée, dans ce cas, qui contiendra des items étant des tableaux de 1 à 3





    Dim c As New Collection
    Dim s(1 To 3) As String
    Dim i As Integer
    
    'exemple !!!
    For i =  1 To 5
        s(1) = "ligne
" & i & ", valeur
1"
        s(2) = "ligne
" & i & ", valeur
2"
        s(3) = "ligne
" & i & ", valeur
3"
        c.Add s, Chr$(96 + i)
    Next i
    
    
    'valeur de "d", 2e colonne ???
    MsgBox c("d")(2)





<small>
[../code.aspx?ID=39466 Coloration VB6, VBA,
VBS]
</small>








EXCEL c'est VBA , pas VB6 !!
merci de faire attention aux rubriques !
catégorie topic modifiée

<hr size ="2" width="100%" />