Réinitialiser des variables pour éviter "Déclaration existante ..."

roulax

XLDnaute Nouveau
Bonjour à tous,

Existe-t-il une commande qui permet de réinitialiser une variable dans une macro ?

Je m'explique, dans une macro j'ai un code que je veux dupliquer pour m'en servir pour d'autres données. Le contenu de mon code reste le même sauf quelques variables. Je voudrais donc "vider" ces variables pour ne pas être obligé de changer de nom.
A l'heure actuelle, j'ai le message "Déclaration existante dans cette portée".

Je me demande donc si il y a une solution simple ? :)
 
G

Guest

Guest
Re : Réinitialiser des variables pour éviter "Déclaration existante ..."

bonjour,

Il suffit de réassigner tes variables (sans les redéclarer)

Code:
Dim Var1 as String
Var1="Toto"
..j'utilise Var1
 
Var1= ""
Pour les variables Objets:
Code:
Set MonObjet = Nothing
Pour les variables de tableau
Code:
Erase MonTableau

A+
 

Caillou

XLDnaute Impliqué
Re : Réinitialiser des variables pour éviter "Déclaration existante ..."

Bonjour,

Pour réinitialiser une variable, tu lui affectes 0 si c'est numérique par exemple...

Mais ton problème ne vient pas de l'initialisation des variables, mais de la déclaration. Tu as visiblement déclaré plusieurs fois la meme variables.

Tu peux tres bien déclarer une seule fois ta variable et ensuite lui affecter différentes valeurs tout au long de l'exécution (d'où le nom : variable)

Code:
Sub Test()
Dim res as Integer
...
res = 12
...
res = 14
End Sub
est correct

Code:
Sub Test()
Dim res as Integer
...
res = 12
...
Dim res as Integer
res = 14
End Sub
est incorrect car la variable res est déclarée (Dim) 2 fois


Caillou
 

Discussions similaires

Réponses
26
Affichages
531

Statistiques des forums

Discussions
312 623
Messages
2 090 278
Membres
104 480
dernier inscrit
Gatsuken