philochon
Messages postés15Date d'inscriptionmercredi 8 septembre 2004StatutMembreDernière intervention27 novembre 2006
-
27 nov. 2006 à 09:01
jrivet
Messages postés7392Date d'inscriptionmercredi 23 avril 2003StatutMembreDernière intervention 6 avril 2012
-
28 nov. 2006 à 08:45
hello voici mon problème
en résumé j'ai
dim VAR as string
dim TblVar(2,2) as string
dans TblVar(1,0) j'ai la chaine "VAR"
dans TblVar(0,1) j'ai une valeur type string ex "coucou"
je souhaiterais que ma variable VAR prennent la valeur "coucou" par identification à la chaine
du tableau(1,0) qui contient "VAR" le nom de la variable a affecter.
en gros la première dimension de mon tableau contient le nom de la variable dont je dois
affecter la deuxième dimension
a la fin je veut donc que VAR contiennent "coucou"
jrivet
Messages postés7392Date d'inscriptionmercredi 23 avril 2003StatutMembreDernière intervention 6 avril 201260 27 nov. 2006 à 09:17
Salut,
je cros que tu n'arriveras pas à faire ce que tu souhaites à l'aide des tableaux, tu peux peu être t'orienter vers les Objets Collection ou Dictionnary
Je crois qu ils sont capables de faire ce que tu souhaites
cs_casy
Messages postés7741Date d'inscriptionmercredi 1 septembre 2004StatutMembreDernière intervention24 septembre 201440 27 nov. 2006 à 11:35
Malgrès ce type de question récurente (en moyenne 1/mois) je n'ai toujours pas compris l'interet d'une telle méthode.
Puisque tu connais le nom de la variable à affecter et que de toute façon une fois le code fini, tu ne peux pas rajouter de variables dans ton programme, pourquoi ne pas faire directement VAR="coucou".
---- Sevyc64 (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #
TMONOD
Messages postés256Date d'inscriptionmardi 25 novembre 2003StatutMembreDernière intervention 6 novembre 20091 27 nov. 2006 à 12:26
Bonjour,
A mon avis ce type de problème se pose quand on ne veux pas, ou ne veux pas, aborder la gestion des données avec les outils de traitement de bases de données.
Il y a confusion entre les données de traitement et le traitement des données (à méditer)
philochon
Messages postés15Date d'inscriptionmercredi 8 septembre 2004StatutMembreDernière intervention27 novembre 2006 27 nov. 2006 à 12:53
salut,
pourquoi je ne fait pas directement VAR = "coucou" c'est par ce que j'ai 500 variables à l'images de VAR qui n'ont pas le meme nom ni d'index particulier et que c'est ultra moche de faire du genre :
(
if tblvar(1,0) = "VAR" then
VAR = tabvar(0,1)
endif
) * 500 !!!
je voudrais en quelques lignes que le contenu de tblvar(1,0) qui est "VAR" soit identifier en tant que la variable déclarée VAR. et ceci pour toutes les valeurs comprises dans la premiere dimension du tableau ex :
je veux que automatiquement les variables correspondantes VAR, VIR et VOR
prennent respectivement les valeurs 'coucou', 'azerty' et 'uiop' ceci sans utiliser des fonctions
de comparaison classiques if then, select case, for i, ...
en gros il faut dire à vb que le contenu de la première dimension de "tblvar" n'est pas des valeurs mais des variables
merci pour vos réponses
Vous n’avez pas trouvé la réponse que vous recherchez ?
TMONOD
Messages postés256Date d'inscriptionmardi 25 novembre 2003StatutMembreDernière intervention 6 novembre 20091 27 nov. 2006 à 14:18
Excuses-moi, mais pourrais-tu nous dire pourquoi tu as besoin de 500 variables distinctes dans un programme ? et pourquoi l'utilisation d'un tableau ne te conviens pas ?
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 27 nov. 2006 à 14:47
Salut
En VB6, il n'est pas possible de s'adresser directement aux variables par leur nom dynamique.
Les noms des variables ne sont là que pour le programmeur. Le programme, lui, ne raisonne qu'en adresse mémoire.
La seule méthode consiste à donner des index à tes variables et de rentrer l'index de la variable dans ton tableau, au lieu de son nom.
Tu pourras ainsi t'adresser à feu VAR par monTableauDeVAR(tblvar(1, 0)) = tblvar(0, 1)
Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés
Champion du monde de boule de cristal - 2005 Le savoir est la seule matière qui s'accroit quand on
mortalino
Messages postés6786Date d'inscriptionvendredi 16 décembre 2005StatutMembreDernière intervention21 décembre 201118 28 nov. 2006 à 05:43
Tu peux aussi procéder comme dit plus haut avec les collections.
La valeur est en premier paramètres, et la clé en second.
Il suffit de passer par la clé.
' ** exemple simple :
Option Explicit
Private Sub Form_Load()
Dim colTest As New Collection
Dim i As Byte