OVH Cloud OVH Cloud

Garder 1 variable en mémoire

3 réponses
Avatar
capkurk
Bonjour à tous,
Dans 1 macro j'ai une variable, je voudrais l'utilise dans 1 autre feuille.
Mais elle est perdue à chaque fois !
Comment la garder ?
Merci

3 réponses

Avatar
LeSteph
Bonsoir,
L'aide Visual Basic explique cela .
Vas dans Vb Clique sur aide recherche "déclaration variable".
Au départ de sub les variables sont initialisées
si tu utilises Dim elles sont réservées
Public elles sont accessibles
Static peut faire ton affaire
entre deux appels elles conservent leur valeur.

LeSteph

"capkurk" a écrit dans le message de
news:
Bonjour à tous,
Dans 1 macro j'ai une variable, je voudrais l'utilise dans 1 autre
feuille.

Mais elle est perdue à chaque fois !
Comment la garder ?
Merci




Avatar
LeSteph
Bonjour,
Tout bien réfléchi cela ne solutionne peut-être pas le problème , si par
exemple tu veux utiliser
une variable d'un module dans un classeur puis une autre fois lancer excel
et récupérer
la valeur de cette variable dans un autre, le principe de déclaration de
variable restant propre
à un projet pourrait être contourné en définissant un nom dans un
classeur, dans la feuil1 de
perso.xls, par exemple.C'est une idée!
Exemple:
La valeur d'une cellule active d'un classeur que l'on veut mettre dans
mavar , depuis celle-ci,
on appellela sub Perso.xls!Defmavar
'******
Sub Defmavar()
Dim mavar
mavar = ActiveCell.Value

Workbooks("perso.xls").Names.Add Name:="thenom",
RefersToR1C1:="þuil1!R6C4"
Workbooks("perso.xls").Worksheets("feuil1").Range("thenom").Cells mavar

End Sub
'*****
Depuis un autre classeur on veut rappeler cette valeur pour l'afficher:
'*****
Sub getmavar()
Dim mavar
mavar = Workbooks("perso.xls").Worksheets("feuil1").Range("thenom")
MsgBox "mavar = " & mavar
End Sub
'****
LeSteph


"LeSteph" a écrit dans le message de
news:40e5bc90$0$26345$
Bonsoir,
L'aide Visual Basic explique cela .
Vas dans Vb Clique sur aide recherche "déclaration variable".
Au départ de sub les variables sont initialisées
si tu utilises Dim elles sont réservées
Public elles sont accessibles
Static peut faire ton affaire
entre deux appels elles conservent leur valeur.

LeSteph

"capkurk" a écrit dans le message de
news:
Bonjour à tous,
Dans 1 macro j'ai une variable, je voudrais l'utilise dans 1 autre
feuille.

Mais elle est perdue à chaque fois !
Comment la garder ?
Merci








Avatar
LeSteph
Bonjour,
Tout bien réfléchi cela ne solutionne peut-être pas le problème , si par
exemple tu veux utiliser
une variable d'un module dans un classeur puis une autre fois lancer excel
et récupérer
la valeur de cette variable dans un autre, le principe de déclaration de
variable restant propre
à un projet pourrait être contourné en définissant un nom dans un
classeur, dans la feuil1 de
perso.xls, par exemple.C'est une idée!
Exemple:
La valeur d'une cellule active d'un classeur que l'on veut mettre dans
mavar , depuis celle-ci,
on appellela sub Perso.xls!Defmavar
'******
Sub Defmavar()
Dim mavar
mavar = ActiveCell.Value
With Workbooks("perso.xls")
.Names.Add Name:="thenom", RefersToR1C1:="þuil1!R6C4"
.Worksheets("feuil1").Range("thenom").Cells =mavar
End with

End Sub
'*****
Depuis un autre classeur on veut rappeler cette valeur pour l'afficher:
'*****
Sub getmavar()
Dim mavar
mavar = Workbooks("perso.xls").Worksheets("feuil1").Range("thenom")
MsgBox "mavar = " & mavar
End Sub
'****
LeSteph

"LeSteph" a écrit dans le message de
news:40e5bc90$0$26345$
Bonsoir,
L'aide Visual Basic explique cela .
Vas dans Vb Clique sur aide recherche "déclaration variable".
Au départ de sub les variables sont initialisées
si tu utilises Dim elles sont réservées
Public elles sont accessibles
Static peut faire ton affaire
entre deux appels elles conservent leur valeur.

LeSteph

"capkurk" a écrit dans le message de
news:
Bonjour à tous,
Dans 1 macro j'ai une variable, je voudrais l'utilise dans 1 autre
feuille.

Mais elle est perdue à chaque fois !
Comment la garder ?
Merci