Comment utiliser la valeur d'une cellule comme nom de variable en VBA [résolu]

WhiteRabbit

XLDnaute Nouveau
Bonjour,

Je souhaiterais pouvoir utiliser la valeur d'une cellule pour ensuite l'utiliser comme nom de variable dans une macro

Cela m'éviterait beaucoup de test IF redondant et vraiment impossible à garder propre dans l'évolution de l'application.

Voici la portion de code que je cherche à optimiser. Il s'agit de deux des itérations IF que je cherche à automatiser en une seule itération IF qui saurait utiliser la variable nom pour ensuite aller chercher les bonnes variable cXXX :

If nom = "PIERRE" Then
typ_A = Worksheets("feuille1").Range("C" & cPIERRE).Value
typ_B = Worksheets("feuille1").Range("A" & cPIERRE).Value
ref = cPIERRE
End If
If nom = "PAUL" Then
typ_A = Worksheets("feuille1").Range("C" & cPAUL).Value
typ_B = Worksheets("feuille1").Range("A" & cPAUL).Value
ref = cPAUL
End If

Savez vous s'il est possible de nommer les paramètres du Range d'une façon (par exemple "C" & c&nom) automatisable ?

Merci pour votre aide.
 
Dernière édition:

jpb388

XLDnaute Accro
Re : Comment utiliser la valeur d'une cellule comme nom de variable en VBA

Bonjour
avec un fichier on pourrait t'aider là non
a+
 

Pierrot93

XLDnaute Barbatruc
Re : Comment utiliser la valeur d'une cellule comme nom de variable en VBA

Bonjour,

perso, pas tout compris, difficile avec juste un bout de code arraché d'une procédure et jeté sur un post de voir où est ton problème...
bon après midi
@+
 

WhiteRabbit

XLDnaute Nouveau
Re : Comment utiliser la valeur d'une cellule comme nom de variable en VBA

C'est good.

Désolé j'ai essayé de faire au mieux car c'etait un point bloquant au milieu d'un fichier de 15 mo que j'essai d'optimiser.
J'ai réglé le pb en passant en paramètre l'info dont j'ai besoin .

Merci qd meme
 

tototiti2008

XLDnaute Barbatruc
Re : Comment utiliser la valeur d'une cellule comme nom de variable en VBA

Bonjour WhiteRabbit, Bonjour jpb, Bonjour Pierrot,

Si j'ai compris, pas possible de concatener le contenu d'une cellule avec un autre bout de texte pour constituer le nom d'une variable
Ce qui est conseillé en général est d'utiliser un tableau de variables

Code:
Dim c(1 to 2) as Long, Indice as long
c(1) = ValeurPierre
c(2) = ValeurPaul
Indice = Switch(nom = "PIERRE", 1, nom = "PAUL", 2)
typ_A = Worksheets("feuille1").Range("C" & c(Indice)).Value
   typ_B = Worksheets("feuille1").Range("A" & c(Indice)).Value
   ref = c(Indice)
 

Pierrot93

XLDnaute Barbatruc
Re : Comment utiliser la valeur d'une cellule comme nom de variable en VBA [résolu]

Re,

car c'etait un point bloquant au milieu d'un fichier de 15 mo que j'essai d'optimiser
dans ce cas il est préférable de présenter sur le forum un tout petit fichier ne représentant que le problème posé avec le résultat attendu... A noter pour la prochaîne fois....

bon après midi
@+

Edition : re toto
 

WhiteRabbit

XLDnaute Nouveau
Re : Comment utiliser la valeur d'une cellule comme nom de variable en VBA [résolu]

En effet, désolé.
Merci à tous

Tototiti, ton commentaire n'est pas perdu, j'en prend note pour une prochaine fois
 

Créez un compte ou connectez vous pour répondre

Vous devez être membre afin de pouvoir répondre ici

Créer un compte

Créez un compte Excel Downloads. C'est simple!

Connexion

Vous avez déjà un compte? Connectez vous ici.

Haut Bas