Comment référencer une variable dynamiquement par son nom ?Visual Basic, au contraire de certains langages de scripting, ne permet pas directement de référencer une variable par son nom. Cependant, il est possible d’obtenir ou de simuler cette fonctionnalité. Cet article présente une série de méthodes utilisables dans ce but. Variables indicées et tableauxDans la majorité des cas, les variables sont traitées comme faisant partie d'un ensemble ordonné, c'est à dire un ensemble dans lequel chaque élément peut se voir attribuer un numéro unique. Typiquement, les tableaux permettent de traiter ce genre de cas. L'exemple suivant illustre un cas classique où l’utilisation d’un tableau permet l’écriture d’un code simple et efficace. Dans cet exemple, le but est d’écrire une fonction réalisant le comptage des résultats de jets d’un dé à 6 faces. Le code ci-dessous est un exemple de ce qu’il ne faut PAS faire (utilisation de 6 variables) : 'Exemple de MAUVAISE implémentation On préfèrera : 'Exemple de meilleure implémentation Les tableaux peuvent soit contenir un nombre fixe (statique) d'entrées, comme c'est le cas dans notre exemple, ou avoir un nombre d'entrées variable durant l'exécution. Les différences entre ces deux types de tableaux sont décrites dans l'article "Comment choisir entre utiliser un tableau de taille fixe (statique) et un tableau dynamique ?". Collections et nom d'élémentsLes Collections permettent d'attacher un nom à chacune des entrées qu'elles contiennent ; Ceci réalise en pratique la référence à une variable par une chaîne de caractères. L'article traitant de l'utilisation des collections explique ceci en détail. Contrôles dynamiquesLes contrôles gérés dynamiquement sur une feuille sont un cas particulier de l'utilisation des collections, et en particulier de la collection Controls d'un objet Form. L'article traitant des contrôles dynamiques présente ceci en détail. Evaluation dynamique d'expressionsDans un souci d’exhaustivité, il faut mentionner la possibilité de référencer une variable globale par son nom, à l'aide de l'API VB6, et de sa fonction EbExecuteLine. Ceci est présenté dans l'article traitant de l' évaluation d'expressions mathématiques. Néanmoins, cette méthode n'est ni supportée, ni documentée et son utilisation peut mener à des résultats inattendus. De plus, un programme d'installation ne peut légalement redistribuer l'API requise. Son utilisation est donc fortement déconseillée. Voir aussi :
|
Date de publication : 24 janvier 2009 Dernière modification : 24 janvier 2009 Rubriques : Généralités Mots-clés : variable, nom, dynamique, collection, tableau, multiple, var, dim, dynamiquement, référence |