OVH Cloud OVH Cloud

Passage d'une variable d'un fichier a un autre...

6 réponses
Avatar
Michel HOLDERITH
Bonjour tout le monde,

J'ai vu sur exelabo :

Passage de variable d'un classeur à un autre :
Comment passer une variable, déclararée comme publique dans un module normal
d'un classeur, à un autre classeur ?
Il te faut déclarer une variable publique dans ton classeur "Principal"
Ajouter une référence à ce classeur (dans l'éditeur VB Outils Références)
dans
chacun des classeurs pouvant utiliser cette variable.
Mais il faut renommer le projet VBAProject du classeur 1, sinon il sera
probablement
impossible à référencer car son nom "VBAProject" entrera en conflit avec
d'autres VBAProject apparaissant dans la liste, même si ceux-ci ne sont
pas cochés.Papou, Pierre Fauconnier

Etant un peu lent d'esprit.... et surtout un peu fatigue..... je n'ai pas
tout compris de ce qu'il fallait faire......
Declare une variable publique dans le fichier principal ca va, il ne faut
tout de meme pas pousse pepe dans.......
en fait c'est apres, quelle reference dois-je prendre ou selectionner ?
comment et ou renommer le nom VBAProject ?

D'avance merci de vos conseils,
@+
Michel.

6 réponses

Avatar
JS
Salut,
Pas tout compris, mais j'utiliser des
variables publiques dans des modules pris
en référence par le module en cours.

Mois j'ai l'habitude de donner des noms précis à
chaque projet. Pour le faire, tu affiche VBA, tu clique
sur le classeur qui contient ton projet, tu clique sur
affichage puis fenêtre de propriétés et tu modifie le
nom du projet(tu remplace le texte VBAProject
Le tour est joué

Ciao
Joseph

-----Message d'origine-----
Bonjour tout le monde,

J'ai vu sur exelabo :

Passage de variable d'un classeur à un autre :
Comment passer une variable, déclararée comme publique
dans un module normal

d'un classeur, à un autre classeur ?
Il te faut déclarer une variable publique dans ton
classeur "Principal"

Ajouter une référence à ce classeur (dans l'éditeur VB
Outils Références)

dans
chacun des classeurs pouvant utiliser cette variable.
Mais il faut renommer le projet VBAProject du classeur 1,
sinon il sera

probablement
impossible à référencer car son nom "VBAProject" entrera
en conflit avec

d'autres VBAProject apparaissant dans la liste, même si
ceux-ci ne sont

pas cochés.Papou, Pierre Fauconnier

Etant un peu lent d'esprit.... et surtout un peu
fatigue..... je n'ai pas

tout compris de ce qu'il fallait faire......
Declare une variable publique dans le fichier principal
ca va, il ne faut

tout de meme pas pousse pepe dans.......
en fait c'est apres, quelle reference dois-je prendre ou
selectionner ?

comment et ou renommer le nom VBAProject ?

D'avance merci de vos conseils,
@+
Michel.


.



Avatar
Michel HOLDERITH
Salut,
J'ai essaye..... ca marche po.....
Dans fichier A j'ai :
Variable="OK"
J'ouvre un fichier puis dans le auto-open j'ai if variable="OK" then ......
else..... end if
sauf avec F8 lors de l'auto-open la variable n'est pas = a "OK" mais a "".
Voila juste mon ptit problmme.
@+
Michel.
P.S. : Je te tiens au courant des que je peux concernant ton dernier FIL.


"JS" wrote in message
news:0a5801c3a2c8$74292bc0$
Salut,
Pas tout compris, mais j'utiliser des
variables publiques dans des modules pris
en référence par le module en cours.

Mois j'ai l'habitude de donner des noms précis à
chaque projet. Pour le faire, tu affiche VBA, tu clique
sur le classeur qui contient ton projet, tu clique sur
affichage puis fenêtre de propriétés et tu modifie le
nom du projet(tu remplace le texte VBAProject
Le tour est joué

Ciao
Joseph

-----Message d'origine-----
Bonjour tout le monde,

J'ai vu sur exelabo :

Passage de variable d'un classeur à un autre :
Comment passer une variable, déclararée comme publique
dans un module normal

d'un classeur, à un autre classeur ?
Il te faut déclarer une variable publique dans ton
classeur "Principal"

Ajouter une référence à ce classeur (dans l'éditeur VB
Outils Références)

dans
chacun des classeurs pouvant utiliser cette variable.
Mais il faut renommer le projet VBAProject du classeur 1,
sinon il sera

probablement
impossible à référencer car son nom "VBAProject" entrera
en conflit avec

d'autres VBAProject apparaissant dans la liste, même si
ceux-ci ne sont

pas cochés.Papou, Pierre Fauconnier

Etant un peu lent d'esprit.... et surtout un peu
fatigue..... je n'ai pas

tout compris de ce qu'il fallait faire......
Declare une variable publique dans le fichier principal
ca va, il ne faut

tout de meme pas pousse pepe dans.......
en fait c'est apres, quelle reference dois-je prendre ou
selectionner ?

comment et ou renommer le nom VBAProject ?

D'avance merci de vos conseils,
@+
Michel.


.



Avatar
Michel HOLDERITH
J'ai trouve..... apres 2 tasses de cafe...
Merci quand meme.
Apparament il faut dans le fichier que je veux ouvrir faire une reference du
fichier principal.....
Maintenant la variable est reconnue dans les 2 fichiers.
C'est a dire que mon 2eme fichier ne peux s'ouvrir que si cette variable "OK" sinon le fichier se referme aussi sec.
et l'ouverture de ce fichier sans macro debouche sur une feuille vierge dont
le sheet & le workbook & les cellules sont verrouilles.....
Voila ma parade.... quand penses tu ?
@+
Michel.

"JS" wrote in message
news:0a5801c3a2c8$74292bc0$
Salut,
Pas tout compris, mais j'utiliser des
variables publiques dans des modules pris
en référence par le module en cours.

Mois j'ai l'habitude de donner des noms précis à
chaque projet. Pour le faire, tu affiche VBA, tu clique
sur le classeur qui contient ton projet, tu clique sur
affichage puis fenêtre de propriétés et tu modifie le
nom du projet(tu remplace le texte VBAProject
Le tour est joué

Ciao
Joseph

-----Message d'origine-----
Bonjour tout le monde,

J'ai vu sur exelabo :

Passage de variable d'un classeur à un autre :
Comment passer une variable, déclararée comme publique
dans un module normal

d'un classeur, à un autre classeur ?
Il te faut déclarer une variable publique dans ton
classeur "Principal"

Ajouter une référence à ce classeur (dans l'éditeur VB
Outils Références)

dans
chacun des classeurs pouvant utiliser cette variable.
Mais il faut renommer le projet VBAProject du classeur 1,
sinon il sera

probablement
impossible à référencer car son nom "VBAProject" entrera
en conflit avec

d'autres VBAProject apparaissant dans la liste, même si
ceux-ci ne sont

pas cochés.Papou, Pierre Fauconnier

Etant un peu lent d'esprit.... et surtout un peu
fatigue..... je n'ai pas

tout compris de ce qu'il fallait faire......
Declare une variable publique dans le fichier principal
ca va, il ne faut

tout de meme pas pousse pepe dans.......
en fait c'est apres, quelle reference dois-je prendre ou
selectionner ?

comment et ou renommer le nom VBAProject ?

D'avance merci de vos conseils,
@+
Michel.


.



Avatar
JS
Salut je viens d'essayer ave un truc tout simple et s'est
OK.

Voici mon exemple
Projet test contien une constante publique nommée
titi = "A"
J'envegistre le projet
Projet test1 contient un petit code :
sub testtiti



-----Message d'origine-----
Salut,
J'ai essaye..... ca marche po.....
Dans fichier A j'ai :
Variable="OK"
J'ouvre un fichier puis dans le auto-open j'ai if
variable="OK" then ......

else..... end if
sauf avec F8 lors de l'auto-open la variable n'est pas =
a "OK" mais a "".

Voila juste mon ptit problmme.
@+
Michel.
P.S. : Je te tiens au courant des que je peux concernant
ton dernier FIL.



"JS" wrote in
message

news:0a5801c3a2c8$74292bc0$
Salut,
Pas tout compris, mais j'utiliser des
variables publiques dans des modules pris
en référence par le module en cours.

Mois j'ai l'habitude de donner des noms précis à
chaque projet. Pour le faire, tu affiche VBA, tu clique
sur le classeur qui contient ton projet, tu clique sur
affichage puis fenêtre de propriétés et tu modifie le
nom du projet(tu remplace le texte VBAProject
Le tour est joué

Ciao
Joseph

-----Message d'origine-----
Bonjour tout le monde,

J'ai vu sur exelabo :

Passage de variable d'un classeur à un autre :
Comment passer une variable, déclararée comme publique
dans un module normal

d'un classeur, à un autre classeur ?
Il te faut déclarer une variable publique dans ton
classeur "Principal"

Ajouter une référence à ce classeur (dans l'éditeur VB
Outils Références)

dans
chacun des classeurs pouvant utiliser cette variable.
Mais il faut renommer le projet VBAProject du classeur 1,
sinon il sera

probablement
impossible à référencer car son nom "VBAProject" entrera
en conflit avec

d'autres VBAProject apparaissant dans la liste, même si
ceux-ci ne sont

pas cochés.Papou, Pierre Fauconnier

Etant un peu lent d'esprit.... et surtout un peu
fatigue..... je n'ai pas

tout compris de ce qu'il fallait faire......
Declare une variable publique dans le fichier principal
ca va, il ne faut

tout de meme pas pousse pepe dans.......
en fait c'est apres, quelle reference dois-je prendre ou
selectionner ?

comment et ou renommer le nom VBAProject ?

D'avance merci de vos conseils,
@+
Michel.


.




.




Avatar
JS
Sorry,enter trop vite,

Je recommence.

Projet Test avec une constante déclarée :
Public Const Titi = "A"
Enrigistrer le projet

Projet Test1 Enregistrer le projet
Faire référence au projet Test
Code :
Sub testtiti
if Titi = "A" then
Msgbox "OK"
end if
end sub

C'est OK

Pour être sur que ton projet Test1 voit la constante
du projet test, met dans ton module l'istruction
Option Explicit
Puis compile, si tu n'as pas d'erreur la constante
est bien reconnue

Même principo avec les variables, mais tes deux projet
doivent être en référence et attention à ce que
ta variable ne change pas de valeur entre temps.
As-tu pensé à l'option Static qui permet de figer
la valeur d'une variale à la sortie d'une fonction ?

A+


-----Message d'origine-----
Salut,
J'ai essaye..... ca marche po.....
Dans fichier A j'ai :
Variable="OK"
J'ouvre un fichier puis dans le auto-open j'ai if
variable="OK" then ......

else..... end if
sauf avec F8 lors de l'auto-open la variable n'est pas =
a "OK" mais a "".

Voila juste mon ptit problmme.
@+
Michel.
P.S. : Je te tiens au courant des que je peux concernant
ton dernier FIL.



"JS" wrote in
message

news:0a5801c3a2c8$74292bc0$
Salut,
Pas tout compris, mais j'utiliser des
variables publiques dans des modules pris
en référence par le module en cours.

Mois j'ai l'habitude de donner des noms précis à
chaque projet. Pour le faire, tu affiche VBA, tu clique
sur le classeur qui contient ton projet, tu clique sur
affichage puis fenêtre de propriétés et tu modifie le
nom du projet(tu remplace le texte VBAProject
Le tour est joué

Ciao
Joseph

-----Message d'origine-----
Bonjour tout le monde,

J'ai vu sur exelabo :

Passage de variable d'un classeur à un autre :
Comment passer une variable, déclararée comme publique
dans un module normal

d'un classeur, à un autre classeur ?
Il te faut déclarer une variable publique dans ton
classeur "Principal"

Ajouter une référence à ce classeur (dans l'éditeur VB
Outils Références)

dans
chacun des classeurs pouvant utiliser cette variable.
Mais il faut renommer le projet VBAProject du classeur 1,
sinon il sera

probablement
impossible à référencer car son nom "VBAProject" entrera
en conflit avec

d'autres VBAProject apparaissant dans la liste, même si
ceux-ci ne sont

pas cochés.Papou, Pierre Fauconnier

Etant un peu lent d'esprit.... et surtout un peu
fatigue..... je n'ai pas

tout compris de ce qu'il fallait faire......
Declare une variable publique dans le fichier principal
ca va, il ne faut

tout de meme pas pousse pepe dans.......
en fait c'est apres, quelle reference dois-je prendre ou
selectionner ?

comment et ou renommer le nom VBAProject ?

D'avance merci de vos conseils,
@+
Michel.


.




.




Avatar
Michel HOLDERITH
Salut,
merci, je t'ai repondu concernant nos projets respectif dans ton premier FIL
de ce matin.
@+
Michel.

"JS" wrote in message
news:0ab201c3a2cd$d306a7d0$
Sorry,enter trop vite,

Je recommence.

Projet Test avec une constante déclarée :
Public Const Titi = "A"
Enrigistrer le projet

Projet Test1 Enregistrer le projet
Faire référence au projet Test
Code :
Sub testtiti
if Titi = "A" then
Msgbox "OK"
end if
end sub

C'est OK

Pour être sur que ton projet Test1 voit la constante
du projet test, met dans ton module l'istruction
Option Explicit
Puis compile, si tu n'as pas d'erreur la constante
est bien reconnue

Même principo avec les variables, mais tes deux projet
doivent être en référence et attention à ce que
ta variable ne change pas de valeur entre temps.
As-tu pensé à l'option Static qui permet de figer
la valeur d'une variale à la sortie d'une fonction ?

A+


-----Message d'origine-----
Salut,
J'ai essaye..... ca marche po.....
Dans fichier A j'ai :
Variable="OK"
J'ouvre un fichier puis dans le auto-open j'ai if
variable="OK" then ......

else..... end if
sauf avec F8 lors de l'auto-open la variable n'est pas a "OK" mais a "".
Voila juste mon ptit problmme.
@+
Michel.
P.S. : Je te tiens au courant des que je peux concernant
ton dernier FIL.



"JS" wrote in
message

news:0a5801c3a2c8$74292bc0$
Salut,
Pas tout compris, mais j'utiliser des
variables publiques dans des modules pris
en référence par le module en cours.

Mois j'ai l'habitude de donner des noms précis à
chaque projet. Pour le faire, tu affiche VBA, tu clique
sur le classeur qui contient ton projet, tu clique sur
affichage puis fenêtre de propriétés et tu modifie le
nom du projet(tu remplace le texte VBAProject
Le tour est joué

Ciao
Joseph

-----Message d'origine-----
Bonjour tout le monde,

J'ai vu sur exelabo :

Passage de variable d'un classeur à un autre :
Comment passer une variable, déclararée comme publique
dans un module normal

d'un classeur, à un autre classeur ?
Il te faut déclarer une variable publique dans ton
classeur "Principal"

Ajouter une référence à ce classeur (dans l'éditeur VB
Outils Références)

dans
chacun des classeurs pouvant utiliser cette variable.
Mais il faut renommer le projet VBAProject du classeur 1,
sinon il sera

probablement
impossible à référencer car son nom "VBAProject" entrera
en conflit avec

d'autres VBAProject apparaissant dans la liste, même si
ceux-ci ne sont

pas cochés.Papou, Pierre Fauconnier

Etant un peu lent d'esprit.... et surtout un peu
fatigue..... je n'ai pas

tout compris de ce qu'il fallait faire......
Declare une variable publique dans le fichier principal
ca va, il ne faut

tout de meme pas pousse pepe dans.......
en fait c'est apres, quelle reference dois-je prendre ou
selectionner ?

comment et ou renommer le nom VBAProject ?

D'avance merci de vos conseils,
@+
Michel.


.




.