Bonjour à tous,
Je débute en VBA donc je vous demanderai d'être indulgent avec moi ... Je suis conscient que ma question est sûrement très basique, mais je n'ai pas la réponse

Voilà mon petit souci du moment : (j'explique tout parce que si ça se trouve la méthode à la base n'est pas bonne, ou pas la meilleure...)
Je dois reprendre du code, dans lequel il y avait des constantes globales déclarées en dur dans le code.
Je dois rendre ces constantes variables et toujours globales afin de permettre leur paramétrage. Le problème c'est qu'une variable globale ne "vit' que lorsque la macro est activée. Autrement dit, dès qu'on ferme le classeur, on perd sa valeur.J'ai donc créé une feuille de paramètress qui me permet de stocker la valeur de la variable.
Comme je reprends le code, et que je veux en faire un minimum, je cherche à ne pas modifier la façon dont on va chercher la valeur de la variable (qui, si vous me suivez était une constante).
Par exemple dans le code on trouvera:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
NouveauString = MaConstante1 & "Mon texte..."
Afin de conserver cet appel, je déclare :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
Public MaConstante1 As String
et je l'initialise à l'ouverture du classeur:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
MaConstante1 = Worksheets("parametres").Range("A1:A1").Value
Le problème c'est que c'est la valeur de la cellule qui est enregistrée et non le chemin vers la cellule, en fait je voudrais qu'à chaque fois qu'on appelle MaConstante1 il aille chercher la valeur de la cellule A1 (et non sa valeur lors de l'initialisation)...

J'espère que j'ai été clair... C'est certainement assez "crado" comme codage, mais mon cerveau me donne rien d'autre comme idée...

Merci d'avance...