OVH Cloud OVH Cloud

Prebleme declaration variable

6 réponses
Avatar
ced
Bonjour !

Gros prob

J'ai une variable déclarée en

public nom_toto as string

il faut que je mette : public nom_toto as string dans tous les module ou
elle intevient sinon, ca compile pas.

C'est la seule qui merdouille comme ca.
?????

6 réponses

Avatar
Modeste
Bonsour®
ced wrote:
J'ai une variable déclarée en
public nom_toto as string
C'est la seule qui merdouille comme ca.
?????


comment est-elle crée ???
comment s'appelle-t-elle réellement ???
cela pourrait éventuellement etre un nom réservé ... (ex : adresse cellule
HS12)
ou comporte plus de 32 caractères
ou alors contient un caractère illicite
ou un nom de proc ou d'objet

--
n'oubliez pas les FAQ :
http://www.excelabo.net http://dj.joss.free.fr/faq.htm
http://www.faqoe.com http://faqword.free.fr
--
Feed Back
http://viadresse.com/?94912042

Avatar
ced
Elle est déclarée en Public

elle va dans 5 ou 6 modules de travail
ca marchais jusqu'à ce que je cree une autre prog dans un module.

J'ai eut un nom ambigue etc...

Je l'ai changé de nom, ca a été mieux, plus qu'une seule déclaration.
MAis en lancant le prog, je me suis appercu qu'en passant dans un module,
elle a perdu son contenu. Elle est devenu vide et alors, ca a fait planté le
prog.




Bonsour®
ced wrote:
J'ai une variable déclarée en
public nom_toto as string
C'est la seule qui merdouille comme ca.
?????


comment est-elle crée ???
comment s'appelle-t-elle réellement ???
cela pourrait éventuellement etre un nom réservé ... (ex : adresse cellule
HS12)
ou comporte plus de 32 caractères
ou alors contient un caractère illicite
ou un nom de proc ou d'objet

--
n'oubliez pas les FAQ :
http://www.excelabo.net http://dj.joss.free.fr/faq.htm
http://www.faqoe.com http://faqword.free.fr
--
Feed Back
http://viadresse.com/?94912042






Avatar
bruno
bonsoir
je viens d'avoir ce genre de problème
il faut declarer la variable uniquement dans un seul module elle ne doit
pas être déclarer ailleur ni dans feuil ni dans userform.


Elle est déclarée en Public

elle va dans 5 ou 6 modules de travail
ca marchais jusqu'à ce que je cree une autre prog dans un module.

J'ai eut un nom ambigue etc...

Je l'ai changé de nom, ca a été mieux, plus qu'une seule déclaration.
MAis en lancant le prog, je me suis appercu qu'en passant dans un module,
elle a perdu son contenu. Elle est devenu vide et alors, ca a fait planté le
prog.





Bonsour®
ced wrote:

J'ai une variable déclarée en
public nom_toto as string
C'est la seule qui merdouille comme ca.
?????


comment est-elle crée ???
comment s'appelle-t-elle réellement ???
cela pourrait éventuellement etre un nom réservé ... (ex : adresse cellule
HS12)
ou comporte plus de 32 caractères
ou alors contient un caractère illicite
ou un nom de proc ou d'objet

--
n'oubliez pas les FAQ :
http://www.excelabo.net http://dj.joss.free.fr/faq.htm
http://www.faqoe.com http://faqword.free.fr
--
Feed Back
http://viadresse.com/?94912042








Avatar
michdenis
Bonjour Ced,

Une variable Public qui s'adresse à l'ensemble des modules du projet doit être déclaré dans le haut d'un module STANDARD.

Assure-toi que tu n'utilise pas le nom de cette variable dans une de tes procédures, en faisant une déclaration au niveau de la
procédure de la variable. Lors de l'exécution d'une procédure, les variables déclarées localement (au niveau de la procédure) ont
préséances sur les variables déclarées comme Public au niveau de la procédure. Cela peut jouer de drôles de tour quant au résultat
si l'usage est inapproprié.

Évite l'utilisation de la commande "End" pour mettre fin à une procédure ou pour fermer un formulaire... cela réinitialera toutes
les variable Public à leur valeur de départ ( 0 pour une variable de type integer, double,long, ou "" pour une variable de type
String).

Lors de l'exécution de ton code, tu peux utiliser dans la fenêtre VBE, un "espion" pour suivre l'évolution de ta variable. Tu peux
même demander que l'exécution du code cesse momentanément à chaque changement de la valeur de ta variable.


Salutations!



"ced" a écrit dans le message de news:
Elle est déclarée en Public

elle va dans 5 ou 6 modules de travail
ca marchais jusqu'à ce que je cree une autre prog dans un module.

J'ai eut un nom ambigue etc...

Je l'ai changé de nom, ca a été mieux, plus qu'une seule déclaration.
MAis en lancant le prog, je me suis appercu qu'en passant dans un module,
elle a perdu son contenu. Elle est devenu vide et alors, ca a fait planté le
prog.




Bonsour®
ced wrote:
J'ai une variable déclarée en
public nom_toto as string
C'est la seule qui merdouille comme ca.
?????


comment est-elle crée ???
comment s'appelle-t-elle réellement ???
cela pourrait éventuellement etre un nom réservé ... (ex : adresse cellule
HS12)
ou comporte plus de 32 caractères
ou alors contient un caractère illicite
ou un nom de proc ou d'objet

--
n'oubliez pas les FAQ :
http://www.excelabo.net http://dj.joss.free.fr/faq.htm
http://www.faqoe.com http://faqword.free.fr
--
Feed Back
http://viadresse.com/?94912042






Avatar
ced
Et bien en fait, j'ai redeclaré une autre variable

Public toto as string

J'ai fait remplacer l'ancienne par la nouvelle.
Donc la, elle n'est déclarée qu'une seule fois.
Ca n'a rien changé.

Par contre, je n'utilise pas de end a part les end sub





Bonjour Ced,

Une variable Public qui s'adresse à l'ensemble des modules du projet doit être déclaré dans le haut d'un module STANDARD.

Assure-toi que tu n'utilise pas le nom de cette variable dans une de tes procédures, en faisant une déclaration au niveau de la
procédure de la variable. Lors de l'exécution d'une procédure, les variables déclarées localement (au niveau de la procédure) ont
préséances sur les variables déclarées comme Public au niveau de la procédure. Cela peut jouer de drôles de tour quant au résultat
si l'usage est inapproprié.

Évite l'utilisation de la commande "End" pour mettre fin à une procédure ou pour fermer un formulaire... cela réinitialera toutes
les variable Public à leur valeur de départ ( 0 pour une variable de type integer, double,long, ou "" pour une variable de type
String).

Lors de l'exécution de ton code, tu peux utiliser dans la fenêtre VBE, un "espion" pour suivre l'évolution de ta variable. Tu peux
même demander que l'exécution du code cesse momentanément à chaque changement de la valeur de ta variable.


Salutations!



"ced" a écrit dans le message de news:
Elle est déclarée en Public

elle va dans 5 ou 6 modules de travail
ca marchais jusqu'à ce que je cree une autre prog dans un module.

J'ai eut un nom ambigue etc...

Je l'ai changé de nom, ca a été mieux, plus qu'une seule déclaration.
MAis en lancant le prog, je me suis appercu qu'en passant dans un module,
elle a perdu son contenu. Elle est devenu vide et alors, ca a fait planté le
prog.




Bonsour®
ced wrote:
J'ai une variable déclarée en
public nom_toto as string
C'est la seule qui merdouille comme ca.
?????


comment est-elle crée ???
comment s'appelle-t-elle réellement ???
cela pourrait éventuellement etre un nom réservé ... (ex : adresse cellule
HS12)
ou comporte plus de 32 caractères
ou alors contient un caractère illicite
ou un nom de proc ou d'objet

--
n'oubliez pas les FAQ :
http://www.excelabo.net http://dj.joss.free.fr/faq.htm
http://www.faqoe.com http://faqword.free.fr
--
Feed Back
http://viadresse.com/?94912042











Avatar
anonymousA
Bonjour,

cherche mieux , car l'explication donnée par Mich Denis est exhaustive
et précise. En conséquence, si tu as déclaré correctement ( au bon
endroit et de manière unique) ta variable et que tes procédures ont été
correctement mises à jour, il ne PEUT PAS y avoir de souci.
Reste que , pour compléter ce que Mich Denis t'a indiqué : si tu fais
exécuter ta procédure et qu'ensuite manuellement tu retournes dans
l'éditeur VBE et que tu modifies quelque chose dans la section de
Déclarations du module où se trouve ta définition de variables, alors ta
variable est automatiquement réinitialisée et perd donc la valeur
qu'elle avait à l'issue de l'exécution précédente du programme.

A+

Et bien en fait, j'ai redeclaré une autre variable

Public toto as string

J'ai fait remplacer l'ancienne par la nouvelle.
Donc la, elle n'est déclarée qu'une seule fois.
Ca n'a rien changé.

Par contre, je n'utilise pas de end a part les end sub






Bonjour Ced,

Une variable Public qui s'adresse à l'ensemble des modules du projet doit être déclaré dans le haut d'un module STANDARD.

Assure-toi que tu n'utilise pas le nom de cette variable dans une de tes procédures, en faisant une déclaration au niveau de la
procédure de la variable. Lors de l'exécution d'une procédure, les variables déclarées localement (au niveau de la procédure) ont
préséances sur les variables déclarées comme Public au niveau de la procédure. Cela peut jouer de drôles de tour quant au résultat
si l'usage est inapproprié.

Évite l'utilisation de la commande "End" pour mettre fin à une procédure ou pour fermer un formulaire... cela réinitialera toutes
les variable Public à leur valeur de départ ( 0 pour une variable de type integer, double,long, ou "" pour une variable de type
String).

Lors de l'exécution de ton code, tu peux utiliser dans la fenêtre VBE, un "espion" pour suivre l'évolution de ta variable. Tu peux
même demander que l'exécution du code cesse momentanément à chaque changement de la valeur de ta variable.


Salutations!



"ced" a écrit dans le message de news:
Elle est déclarée en Public

elle va dans 5 ou 6 modules de travail
ca marchais jusqu'à ce que je cree une autre prog dans un module.

J'ai eut un nom ambigue etc...

Je l'ai changé de nom, ca a été mieux, plus qu'une seule déclaration.
MAis en lancant le prog, je me suis appercu qu'en passant dans un module,
elle a perdu son contenu. Elle est devenu vide et alors, ca a fait planté le
prog.





Bonsour®
ced wrote:

J'ai une variable déclarée en
public nom_toto as string
C'est la seule qui merdouille comme ca.
?????


comment est-elle crée ???
comment s'appelle-t-elle réellement ???
cela pourrait éventuellement etre un nom réservé ... (ex : adresse cellule
HS12)
ou comporte plus de 32 caractères
ou alors contient un caractère illicite
ou un nom de proc ou d'objet

--
n'oubliez pas les FAQ :
http://www.excelabo.net http://dj.joss.free.fr/faq.htm
http://www.faqoe.com http://faqword.free.fr
--
Feed Back
http://viadresse.com/?94912042