Bonjour,
J'aimerais avoir un renseignement. Je souhaite déclencher
des procédures lors de l'ouverture de mon fichier Excel
mais je n'y arrive pas. Pourriez vois si ma méthode est
correcte.
J'ai donc dans mon workbook ceci:
Public Sub Workbook_Open()
Feuil1.LancerProcedure
End Sub
et dans ma feuil1 ceci
Sub Public LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End Sub
MaProcedure1 etc sont en Public
Je n'arrive pas à lancer depuis mon Workbook_Open mes
procédures dans ma feuil1. Je ne vois pas mon erreur.
Pourriez vous m'aider SVP. J'ai peut être oubliè quelque
chose !!.
Si je fais ceci dans ma feuil1 en Activate alors cela
marche !!.
Sub Worksheet_Activate()
LancerProcedure
End Sub
Sub Public LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End Sub
Merci
Nicolas
Bonjour,
J'aimerais avoir un renseignement. Je souhaite déclencher
des procédures lors de l'ouverture de mon fichier Excel
mais je n'y arrive pas. Pourriez vois si ma méthode est
correcte.
J'ai donc dans mon workbook ceci:
Public Sub Workbook_Open()
Feuil1.LancerProcedure
End Sub
et dans ma feuil1 ceci
Sub Public LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End Sub
MaProcedure1 etc sont en Public
Je n'arrive pas à lancer depuis mon Workbook_Open mes
procédures dans ma feuil1. Je ne vois pas mon erreur.
Pourriez vous m'aider SVP. J'ai peut être oubliè quelque
chose !!.
Si je fais ceci dans ma feuil1 en Activate alors cela
marche !!.
Sub Worksheet_Activate()
LancerProcedure
End Sub
Sub Public LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End Sub
Merci
Nicolas
Bonjour,
J'aimerais avoir un renseignement. Je souhaite déclencher
des procédures lors de l'ouverture de mon fichier Excel
mais je n'y arrive pas. Pourriez vois si ma méthode est
correcte.
J'ai donc dans mon workbook ceci:
Public Sub Workbook_Open()
Feuil1.LancerProcedure
End Sub
et dans ma feuil1 ceci
Sub Public LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End Sub
MaProcedure1 etc sont en Public
Je n'arrive pas à lancer depuis mon Workbook_Open mes
procédures dans ma feuil1. Je ne vois pas mon erreur.
Pourriez vous m'aider SVP. J'ai peut être oubliè quelque
chose !!.
Si je fais ceci dans ma feuil1 en Activate alors cela
marche !!.
Sub Worksheet_Activate()
LancerProcedure
End Sub
Sub Public LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End Sub
Merci
Nicolas
-----Message d'origine-----
Bonsoir,
Le mot clef Public est inutile : une Sub non précédée du
mot clef Private est Public.
Par ailleurs, pourquoi places-tu LancerProcedure()
dans le module de la feuille 1 ? Ces moduules sont
destinés uniquement à gérer les événements de la feuille
(Activate, Deactivete, Change, ...), ce qui ne semble pas
être le cas.
Pour les mêmes raisons les procédures gérant les
événements relatifs au classeur doivent impérativement
être dans le module rattaché au classeur (Thisworkbook)
Transfère LancerProcedure() dans un module standard
sans ni Private, ni Public, et tu pourras y accéder depuis
n'importe quel module du projet :
Dans le module de ThisWorkbook :
Public Sub Workbook_Open()
LancerProcedure ' pas de qualificatif devant
End Sub
Dans un module standard
Sub LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End SubBonjour,
J'aimerais avoir un renseignement. Je souhaite
déclencher
des procédures lors de l'ouverture de mon fichier Excel
mais je n'y arrive pas. Pourriez vois si ma méthode est
correcte.
J'ai donc dans mon workbook ceci:
Public Sub Workbook_Open()
Feuil1.LancerProcedure
End Sub
et dans ma feuil1 ceci
Sub Public LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End Sub
MaProcedure1 etc sont en Public
Je n'arrive pas à lancer depuis mon Workbook_Open mes
procédures dans ma feuil1. Je ne vois pas mon erreur.
Pourriez vous m'aider SVP. J'ai peut être oubliè quelque
chose !!.
Si je fais ceci dans ma feuil1 en Activate alors cela
marche !!.
Sub Worksheet_Activate()
LancerProcedure
End Sub
Sub Public LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End Sub
Merci
Nicolas
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
.
-----Message d'origine-----
Bonsoir,
Le mot clef Public est inutile : une Sub non précédée du
mot clef Private est Public.
Par ailleurs, pourquoi places-tu LancerProcedure()
dans le module de la feuille 1 ? Ces moduules sont
destinés uniquement à gérer les événements de la feuille
(Activate, Deactivete, Change, ...), ce qui ne semble pas
être le cas.
Pour les mêmes raisons les procédures gérant les
événements relatifs au classeur doivent impérativement
être dans le module rattaché au classeur (Thisworkbook)
Transfère LancerProcedure() dans un module standard
sans ni Private, ni Public, et tu pourras y accéder depuis
n'importe quel module du projet :
Dans le module de ThisWorkbook :
Public Sub Workbook_Open()
LancerProcedure ' pas de qualificatif devant
End Sub
Dans un module standard
Sub LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End Sub
Bonjour,
J'aimerais avoir un renseignement. Je souhaite
déclencher
des procédures lors de l'ouverture de mon fichier Excel
mais je n'y arrive pas. Pourriez vois si ma méthode est
correcte.
J'ai donc dans mon workbook ceci:
Public Sub Workbook_Open()
Feuil1.LancerProcedure
End Sub
et dans ma feuil1 ceci
Sub Public LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End Sub
MaProcedure1 etc sont en Public
Je n'arrive pas à lancer depuis mon Workbook_Open mes
procédures dans ma feuil1. Je ne vois pas mon erreur.
Pourriez vous m'aider SVP. J'ai peut être oubliè quelque
chose !!.
Si je fais ceci dans ma feuil1 en Activate alors cela
marche !!.
Sub Worksheet_Activate()
LancerProcedure
End Sub
Sub Public LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End Sub
Merci
Nicolas
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
.
-----Message d'origine-----
Bonsoir,
Le mot clef Public est inutile : une Sub non précédée du
mot clef Private est Public.
Par ailleurs, pourquoi places-tu LancerProcedure()
dans le module de la feuille 1 ? Ces moduules sont
destinés uniquement à gérer les événements de la feuille
(Activate, Deactivete, Change, ...), ce qui ne semble pas
être le cas.
Pour les mêmes raisons les procédures gérant les
événements relatifs au classeur doivent impérativement
être dans le module rattaché au classeur (Thisworkbook)
Transfère LancerProcedure() dans un module standard
sans ni Private, ni Public, et tu pourras y accéder depuis
n'importe quel module du projet :
Dans le module de ThisWorkbook :
Public Sub Workbook_Open()
LancerProcedure ' pas de qualificatif devant
End Sub
Dans un module standard
Sub LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End SubBonjour,
J'aimerais avoir un renseignement. Je souhaite
déclencher
des procédures lors de l'ouverture de mon fichier Excel
mais je n'y arrive pas. Pourriez vois si ma méthode est
correcte.
J'ai donc dans mon workbook ceci:
Public Sub Workbook_Open()
Feuil1.LancerProcedure
End Sub
et dans ma feuil1 ceci
Sub Public LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End Sub
MaProcedure1 etc sont en Public
Je n'arrive pas à lancer depuis mon Workbook_Open mes
procédures dans ma feuil1. Je ne vois pas mon erreur.
Pourriez vous m'aider SVP. J'ai peut être oubliè quelque
chose !!.
Si je fais ceci dans ma feuil1 en Activate alors cela
marche !!.
Sub Worksheet_Activate()
LancerProcedure
End Sub
Sub Public LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End Sub
Merci
Nicolas
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
.
Bonjour
Merci de ton et de votre aide.
Concernant ton conseil de créer mon code dans un module.
J'ai plusieurs feuilles dans mon fichier Excel. Je peux
donc avoir un module pour l'ensemble du code de la feuil1
puis un autre module pour l'ensemble du code dans feuil2.
Dans mon WorkBook_Open, est il possible de lui dire qu'il
doit aller chercher le code dans ce module avec le nom de
ce code.
Public Sub Workbook_Open()
Module toto LancerProcedure
Module titi LancerProcedure
End Sub
J'espére être compréhensible
Merci de votre aide
Nicolas-----Message d'origine-----
Bonsoir,
Le mot clef Public est inutile : une Sub non précédée du
mot clef Private est Public.
Par ailleurs, pourquoi places-tu LancerProcedure()
dans le module de la feuille 1 ? Ces modules sont
destinés uniquement à gérer les événements de la feuille
(Activate, Deactivete, Change, ...), ce qui ne semble pas
être le cas.
Pour les mêmes raisons les procédures gérant les
événements relatifs au classeur doivent impérativement
être dans le module rattaché au classeur (Thisworkbook)
Transfère LancerProcedure() dans un module standard
sans ni Private, ni Public, et tu pourras y accéder depuis
n'importe quel module du projet :
Dans le module de ThisWorkbook :
Public Sub Workbook_Open()
LancerProcedure ' pas de qualificatif devant
End Sub
Dans un module standard
Sub LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End SubBonjour,
J'aimerais avoir un renseignement. Je souhaite
déclencherdes procédures lors de l'ouverture de mon fichier Excel
mais je n'y arrive pas. Pourriez vois si ma méthode est
correcte.
J'ai donc dans mon workbook ceci:
Public Sub Workbook_Open()
Feuil1.LancerProcedure
End Sub
et dans ma feuil1 ceci
Sub Public LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End Sub
MaProcedure1 etc sont en Public
Je n'arrive pas à lancer depuis mon Workbook_Open mes
procédures dans ma feuil1. Je ne vois pas mon erreur.
Pourriez vous m'aider SVP. J'ai peut être oubliè quelque
chose !!.
Si je fais ceci dans ma feuil1 en Activate alors cela
marche !!.
Sub Worksheet_Activate()
LancerProcedure
End Sub
Sub Public LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End Sub
Merci
Nicolas
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
.
Bonjour
Merci de ton et de votre aide.
Concernant ton conseil de créer mon code dans un module.
J'ai plusieurs feuilles dans mon fichier Excel. Je peux
donc avoir un module pour l'ensemble du code de la feuil1
puis un autre module pour l'ensemble du code dans feuil2.
Dans mon WorkBook_Open, est il possible de lui dire qu'il
doit aller chercher le code dans ce module avec le nom de
ce code.
Public Sub Workbook_Open()
Module toto LancerProcedure
Module titi LancerProcedure
End Sub
J'espére être compréhensible
Merci de votre aide
Nicolas
-----Message d'origine-----
Bonsoir,
Le mot clef Public est inutile : une Sub non précédée du
mot clef Private est Public.
Par ailleurs, pourquoi places-tu LancerProcedure()
dans le module de la feuille 1 ? Ces modules sont
destinés uniquement à gérer les événements de la feuille
(Activate, Deactivete, Change, ...), ce qui ne semble pas
être le cas.
Pour les mêmes raisons les procédures gérant les
événements relatifs au classeur doivent impérativement
être dans le module rattaché au classeur (Thisworkbook)
Transfère LancerProcedure() dans un module standard
sans ni Private, ni Public, et tu pourras y accéder depuis
n'importe quel module du projet :
Dans le module de ThisWorkbook :
Public Sub Workbook_Open()
LancerProcedure ' pas de qualificatif devant
End Sub
Dans un module standard
Sub LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End Sub
Bonjour,
J'aimerais avoir un renseignement. Je souhaite
déclencher
des procédures lors de l'ouverture de mon fichier Excel
mais je n'y arrive pas. Pourriez vois si ma méthode est
correcte.
J'ai donc dans mon workbook ceci:
Public Sub Workbook_Open()
Feuil1.LancerProcedure
End Sub
et dans ma feuil1 ceci
Sub Public LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End Sub
MaProcedure1 etc sont en Public
Je n'arrive pas à lancer depuis mon Workbook_Open mes
procédures dans ma feuil1. Je ne vois pas mon erreur.
Pourriez vous m'aider SVP. J'ai peut être oubliè quelque
chose !!.
Si je fais ceci dans ma feuil1 en Activate alors cela
marche !!.
Sub Worksheet_Activate()
LancerProcedure
End Sub
Sub Public LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End Sub
Merci
Nicolas
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
.
Bonjour
Merci de ton et de votre aide.
Concernant ton conseil de créer mon code dans un module.
J'ai plusieurs feuilles dans mon fichier Excel. Je peux
donc avoir un module pour l'ensemble du code de la feuil1
puis un autre module pour l'ensemble du code dans feuil2.
Dans mon WorkBook_Open, est il possible de lui dire qu'il
doit aller chercher le code dans ce module avec le nom de
ce code.
Public Sub Workbook_Open()
Module toto LancerProcedure
Module titi LancerProcedure
End Sub
J'espére être compréhensible
Merci de votre aide
Nicolas-----Message d'origine-----
Bonsoir,
Le mot clef Public est inutile : une Sub non précédée du
mot clef Private est Public.
Par ailleurs, pourquoi places-tu LancerProcedure()
dans le module de la feuille 1 ? Ces modules sont
destinés uniquement à gérer les événements de la feuille
(Activate, Deactivete, Change, ...), ce qui ne semble pas
être le cas.
Pour les mêmes raisons les procédures gérant les
événements relatifs au classeur doivent impérativement
être dans le module rattaché au classeur (Thisworkbook)
Transfère LancerProcedure() dans un module standard
sans ni Private, ni Public, et tu pourras y accéder depuis
n'importe quel module du projet :
Dans le module de ThisWorkbook :
Public Sub Workbook_Open()
LancerProcedure ' pas de qualificatif devant
End Sub
Dans un module standard
Sub LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End SubBonjour,
J'aimerais avoir un renseignement. Je souhaite
déclencherdes procédures lors de l'ouverture de mon fichier Excel
mais je n'y arrive pas. Pourriez vois si ma méthode est
correcte.
J'ai donc dans mon workbook ceci:
Public Sub Workbook_Open()
Feuil1.LancerProcedure
End Sub
et dans ma feuil1 ceci
Sub Public LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End Sub
MaProcedure1 etc sont en Public
Je n'arrive pas à lancer depuis mon Workbook_Open mes
procédures dans ma feuil1. Je ne vois pas mon erreur.
Pourriez vous m'aider SVP. J'ai peut être oubliè quelque
chose !!.
Si je fais ceci dans ma feuil1 en Activate alors cela
marche !!.
Sub Worksheet_Activate()
LancerProcedure
End Sub
Sub Public LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End Sub
Merci
Nicolas
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
.
-----Message d'origine-----
Re,
De rien ;-))
Qu'appelles-tu "code de la feuil1" ? Peux-tu donner un
exemple ?
Est-ce que le traitement à lancer est le même pour
chaque feuille, ou pas du tout ?Bonjour
Merci de ton et de votre aide.
Concernant ton conseil de créer mon code dans un module.
J'ai plusieurs feuilles dans mon fichier Excel. Je peux
donc avoir un module pour l'ensemble du code de la
feuil1
puis un autre module pour l'ensemble du code dans
feuil2.
Dans mon WorkBook_Open, est il possible de lui dire
qu'il
doit aller chercher le code dans ce module avec le nom
de
ce code.
Public Sub Workbook_Open()
Module toto LancerProcedure
Module titi LancerProcedure
End Sub
J'espére être compréhensible
Merci de votre aide
Nicolas-----Message d'origine-----
Bonsoir,
Le mot clef Public est inutile : une Sub non précédée
du
mot clef Private est Public.
Par ailleurs, pourquoi places-tu LancerProcedure()
dans le module de la feuille 1 ? Ces modules sont
destinés uniquement à gérer les événements de la
feuille
(Activate, Deactivete, Change, ...), ce qui ne semble
pas
être le cas.
Pour les mêmes raisons les procédures gérant les
événements relatifs au classeur doivent impérativement
être dans le module rattaché au classeur (Thisworkbook)
Transfère LancerProcedure() dans un module standard
sans ni Private, ni Public, et tu pourras y accéder
depuis
n'importe quel module du projet :
Dans le module de ThisWorkbook :
Public Sub Workbook_Open()
LancerProcedure ' pas de qualificatif devant
End Sub
Dans un module standard
Sub LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End SubBonjour,
J'aimerais avoir un renseignement. Je souhaite
déclencherdes procédures lors de l'ouverture de mon fichier
Excel
mais je n'y arrive pas. Pourriez vois si ma méthode
est
correcte.
J'ai donc dans mon workbook ceci:
Public Sub Workbook_Open()
Feuil1.LancerProcedure
End Sub
et dans ma feuil1 ceci
Sub Public LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End Sub
MaProcedure1 etc sont en Public
Je n'arrive pas à lancer depuis mon Workbook_Open mes
procédures dans ma feuil1. Je ne vois pas mon erreur.
Pourriez vous m'aider SVP. J'ai peut être oubliè
quelque
chose !!.
Si je fais ceci dans ma feuil1 en Activate alors cela
marche !!.
Sub Worksheet_Activate()
LancerProcedure
End Sub
Sub Public LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End Sub
Merci
Nicolas
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
.
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
.
-----Message d'origine-----
Re,
De rien ;-))
Qu'appelles-tu "code de la feuil1" ? Peux-tu donner un
exemple ?
Est-ce que le traitement à lancer est le même pour
chaque feuille, ou pas du tout ?
Bonjour
Merci de ton et de votre aide.
Concernant ton conseil de créer mon code dans un module.
J'ai plusieurs feuilles dans mon fichier Excel. Je peux
donc avoir un module pour l'ensemble du code de la
feuil1
puis un autre module pour l'ensemble du code dans
feuil2.
Dans mon WorkBook_Open, est il possible de lui dire
qu'il
doit aller chercher le code dans ce module avec le nom
de
ce code.
Public Sub Workbook_Open()
Module toto LancerProcedure
Module titi LancerProcedure
End Sub
J'espére être compréhensible
Merci de votre aide
Nicolas
-----Message d'origine-----
Bonsoir,
Le mot clef Public est inutile : une Sub non précédée
du
mot clef Private est Public.
Par ailleurs, pourquoi places-tu LancerProcedure()
dans le module de la feuille 1 ? Ces modules sont
destinés uniquement à gérer les événements de la
feuille
(Activate, Deactivete, Change, ...), ce qui ne semble
pas
être le cas.
Pour les mêmes raisons les procédures gérant les
événements relatifs au classeur doivent impérativement
être dans le module rattaché au classeur (Thisworkbook)
Transfère LancerProcedure() dans un module standard
sans ni Private, ni Public, et tu pourras y accéder
depuis
n'importe quel module du projet :
Dans le module de ThisWorkbook :
Public Sub Workbook_Open()
LancerProcedure ' pas de qualificatif devant
End Sub
Dans un module standard
Sub LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End Sub
Bonjour,
J'aimerais avoir un renseignement. Je souhaite
déclencher
des procédures lors de l'ouverture de mon fichier
Excel
mais je n'y arrive pas. Pourriez vois si ma méthode
est
correcte.
J'ai donc dans mon workbook ceci:
Public Sub Workbook_Open()
Feuil1.LancerProcedure
End Sub
et dans ma feuil1 ceci
Sub Public LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End Sub
MaProcedure1 etc sont en Public
Je n'arrive pas à lancer depuis mon Workbook_Open mes
procédures dans ma feuil1. Je ne vois pas mon erreur.
Pourriez vous m'aider SVP. J'ai peut être oubliè
quelque
chose !!.
Si je fais ceci dans ma feuil1 en Activate alors cela
marche !!.
Sub Worksheet_Activate()
LancerProcedure
End Sub
Sub Public LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End Sub
Merci
Nicolas
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
.
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
.
-----Message d'origine-----
Re,
De rien ;-))
Qu'appelles-tu "code de la feuil1" ? Peux-tu donner un
exemple ?
Est-ce que le traitement à lancer est le même pour
chaque feuille, ou pas du tout ?Bonjour
Merci de ton et de votre aide.
Concernant ton conseil de créer mon code dans un module.
J'ai plusieurs feuilles dans mon fichier Excel. Je peux
donc avoir un module pour l'ensemble du code de la
feuil1
puis un autre module pour l'ensemble du code dans
feuil2.
Dans mon WorkBook_Open, est il possible de lui dire
qu'il
doit aller chercher le code dans ce module avec le nom
de
ce code.
Public Sub Workbook_Open()
Module toto LancerProcedure
Module titi LancerProcedure
End Sub
J'espére être compréhensible
Merci de votre aide
Nicolas-----Message d'origine-----
Bonsoir,
Le mot clef Public est inutile : une Sub non précédée
du
mot clef Private est Public.
Par ailleurs, pourquoi places-tu LancerProcedure()
dans le module de la feuille 1 ? Ces modules sont
destinés uniquement à gérer les événements de la
feuille
(Activate, Deactivete, Change, ...), ce qui ne semble
pas
être le cas.
Pour les mêmes raisons les procédures gérant les
événements relatifs au classeur doivent impérativement
être dans le module rattaché au classeur (Thisworkbook)
Transfère LancerProcedure() dans un module standard
sans ni Private, ni Public, et tu pourras y accéder
depuis
n'importe quel module du projet :
Dans le module de ThisWorkbook :
Public Sub Workbook_Open()
LancerProcedure ' pas de qualificatif devant
End Sub
Dans un module standard
Sub LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End SubBonjour,
J'aimerais avoir un renseignement. Je souhaite
déclencherdes procédures lors de l'ouverture de mon fichier
Excel
mais je n'y arrive pas. Pourriez vois si ma méthode
est
correcte.
J'ai donc dans mon workbook ceci:
Public Sub Workbook_Open()
Feuil1.LancerProcedure
End Sub
et dans ma feuil1 ceci
Sub Public LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End Sub
MaProcedure1 etc sont en Public
Je n'arrive pas à lancer depuis mon Workbook_Open mes
procédures dans ma feuil1. Je ne vois pas mon erreur.
Pourriez vous m'aider SVP. J'ai peut être oubliè
quelque
chose !!.
Si je fais ceci dans ma feuil1 en Activate alors cela
marche !!.
Sub Worksheet_Activate()
LancerProcedure
End Sub
Sub Public LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End Sub
Merci
Nicolas
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
.
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
.
Merci Michel,
Quand je parle de la feuil1 je veux dire le code qui
correspond à l'onglet par exemple Reporting mais pour VBA
c'est Feuil1(REPORTING).
Concernant l'exemple, je suis désolé mais je ne suis pas
sur le bon ordinateur, je ne peux te montrer un exemple.
Dans ma feuil1 j'ai plusieurs procédures. J'ai des
procédures pour récupérer des données depuis Access, j'ai
des pocédures pour le formatage.
J'ai récupéré le nom de mes procédures dans une seule et
je fais appel à cette procédure dans mon Workook_Open.
J'ai utilisé cette technique dans plusieurs feuilles VBA
et j'ai malheureusement des noms de pocédures identiques
dans la feuil1 et la feuil2 par exemple.
Je pense que ma méthode de travail vis à vis de excel
n'est pas bonne. J'aurais peut être du regrouper mes
procédures dans un modules car mon code n'est pas de
l'événementiel.
Est il possible de mettre tout mon code de la Feuil1 dans
un Module puis tout mon code de ma feuil2 dans un autre
Module et faire un appel de ces procédures dans mon
Workbook_Open. qu'est ce que tu en penses?.
Pour faire appel à une procédure dans un module, qu'elle
syntaxe dois je utiliser. Si dans deux modules, j'ai le
même nom pour un procédure. Comment dois je faire sans
devoir changer le nom de ma procédure
J'espére être compréhensible.
Nicolas-----Message d'origine-----
Re,
De rien ;-))
Qu'appelles-tu "code de la feuil1" ? Peux-tu donner un
exemple ?
Est-ce que le traitement à lancer est le même pour
chaque feuille, ou pas du tout ?Bonjour
Merci de ton et de votre aide.
Concernant ton conseil de créer mon code dans un module.
J'ai plusieurs feuilles dans mon fichier Excel. Je peux
donc avoir un module pour l'ensemble du code de la
feuil1puis un autre module pour l'ensemble du code dans
feuil2.Dans mon WorkBook_Open, est il possible de lui dire
qu'ildoit aller chercher le code dans ce module avec le nom
dece code.
Public Sub Workbook_Open()
Module toto LancerProcedure
Module titi LancerProcedure
End Sub
J'espére être compréhensible
Merci de votre aide
Nicolas-----Message d'origine-----
Bonsoir,
Le mot clef Public est inutile : une Sub non précédée
dumot clef Private est Public.
Par ailleurs, pourquoi places-tu LancerProcedure()
dans le module de la feuille 1 ? Ces modules sont
destinés uniquement à gérer les événements de la
feuille(Activate, Deactivete, Change, ...), ce qui ne semble
pasêtre le cas.
Pour les mêmes raisons les procédures gérant les
événements relatifs au classeur doivent impérativement
être dans le module rattaché au classeur (Thisworkbook)
Transfère LancerProcedure() dans un module standard
sans ni Private, ni Public, et tu pourras y accéder
depuisn'importe quel module du projet :
Dans le module de ThisWorkbook :
Public Sub Workbook_Open()
LancerProcedure ' pas de qualificatif devant
End Sub
Dans un module standard
Sub LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End SubBonjour,
J'aimerais avoir un renseignement. Je souhaite
déclencherdes procédures lors de l'ouverture de mon fichier
Excelmais je n'y arrive pas. Pourriez vois si ma méthode
estcorrecte.
J'ai donc dans mon workbook ceci:
Public Sub Workbook_Open()
Feuil1.LancerProcedure
End Sub
et dans ma feuil1 ceci
Sub Public LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End Sub
MaProcedure1 etc sont en Public
Je n'arrive pas à lancer depuis mon Workbook_Open mes
procédures dans ma feuil1. Je ne vois pas mon erreur.
Pourriez vous m'aider SVP. J'ai peut être oubliè
quelquechose !!.
Si je fais ceci dans ma feuil1 en Activate alors cela
marche !!.
Sub Worksheet_Activate()
LancerProcedure
End Sub
Sub Public LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End Sub
Merci
Nicolas
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
.
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
.
Merci Michel,
Quand je parle de la feuil1 je veux dire le code qui
correspond à l'onglet par exemple Reporting mais pour VBA
c'est Feuil1(REPORTING).
Concernant l'exemple, je suis désolé mais je ne suis pas
sur le bon ordinateur, je ne peux te montrer un exemple.
Dans ma feuil1 j'ai plusieurs procédures. J'ai des
procédures pour récupérer des données depuis Access, j'ai
des pocédures pour le formatage.
J'ai récupéré le nom de mes procédures dans une seule et
je fais appel à cette procédure dans mon Workook_Open.
J'ai utilisé cette technique dans plusieurs feuilles VBA
et j'ai malheureusement des noms de pocédures identiques
dans la feuil1 et la feuil2 par exemple.
Je pense que ma méthode de travail vis à vis de excel
n'est pas bonne. J'aurais peut être du regrouper mes
procédures dans un modules car mon code n'est pas de
l'événementiel.
Est il possible de mettre tout mon code de la Feuil1 dans
un Module puis tout mon code de ma feuil2 dans un autre
Module et faire un appel de ces procédures dans mon
Workbook_Open. qu'est ce que tu en penses?.
Pour faire appel à une procédure dans un module, qu'elle
syntaxe dois je utiliser. Si dans deux modules, j'ai le
même nom pour un procédure. Comment dois je faire sans
devoir changer le nom de ma procédure
J'espére être compréhensible.
Nicolas
-----Message d'origine-----
Re,
De rien ;-))
Qu'appelles-tu "code de la feuil1" ? Peux-tu donner un
exemple ?
Est-ce que le traitement à lancer est le même pour
chaque feuille, ou pas du tout ?
Bonjour
Merci de ton et de votre aide.
Concernant ton conseil de créer mon code dans un module.
J'ai plusieurs feuilles dans mon fichier Excel. Je peux
donc avoir un module pour l'ensemble du code de la
feuil1
puis un autre module pour l'ensemble du code dans
feuil2.
Dans mon WorkBook_Open, est il possible de lui dire
qu'il
doit aller chercher le code dans ce module avec le nom
de
ce code.
Public Sub Workbook_Open()
Module toto LancerProcedure
Module titi LancerProcedure
End Sub
J'espére être compréhensible
Merci de votre aide
Nicolas
-----Message d'origine-----
Bonsoir,
Le mot clef Public est inutile : une Sub non précédée
du
mot clef Private est Public.
Par ailleurs, pourquoi places-tu LancerProcedure()
dans le module de la feuille 1 ? Ces modules sont
destinés uniquement à gérer les événements de la
feuille
(Activate, Deactivete, Change, ...), ce qui ne semble
pas
être le cas.
Pour les mêmes raisons les procédures gérant les
événements relatifs au classeur doivent impérativement
être dans le module rattaché au classeur (Thisworkbook)
Transfère LancerProcedure() dans un module standard
sans ni Private, ni Public, et tu pourras y accéder
depuis
n'importe quel module du projet :
Dans le module de ThisWorkbook :
Public Sub Workbook_Open()
LancerProcedure ' pas de qualificatif devant
End Sub
Dans un module standard
Sub LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End Sub
Bonjour,
J'aimerais avoir un renseignement. Je souhaite
déclencher
des procédures lors de l'ouverture de mon fichier
Excel
mais je n'y arrive pas. Pourriez vois si ma méthode
est
correcte.
J'ai donc dans mon workbook ceci:
Public Sub Workbook_Open()
Feuil1.LancerProcedure
End Sub
et dans ma feuil1 ceci
Sub Public LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End Sub
MaProcedure1 etc sont en Public
Je n'arrive pas à lancer depuis mon Workbook_Open mes
procédures dans ma feuil1. Je ne vois pas mon erreur.
Pourriez vous m'aider SVP. J'ai peut être oubliè
quelque
chose !!.
Si je fais ceci dans ma feuil1 en Activate alors cela
marche !!.
Sub Worksheet_Activate()
LancerProcedure
End Sub
Sub Public LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End Sub
Merci
Nicolas
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
.
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
.
Merci Michel,
Quand je parle de la feuil1 je veux dire le code qui
correspond à l'onglet par exemple Reporting mais pour VBA
c'est Feuil1(REPORTING).
Concernant l'exemple, je suis désolé mais je ne suis pas
sur le bon ordinateur, je ne peux te montrer un exemple.
Dans ma feuil1 j'ai plusieurs procédures. J'ai des
procédures pour récupérer des données depuis Access, j'ai
des pocédures pour le formatage.
J'ai récupéré le nom de mes procédures dans une seule et
je fais appel à cette procédure dans mon Workook_Open.
J'ai utilisé cette technique dans plusieurs feuilles VBA
et j'ai malheureusement des noms de pocédures identiques
dans la feuil1 et la feuil2 par exemple.
Je pense que ma méthode de travail vis à vis de excel
n'est pas bonne. J'aurais peut être du regrouper mes
procédures dans un modules car mon code n'est pas de
l'événementiel.
Est il possible de mettre tout mon code de la Feuil1 dans
un Module puis tout mon code de ma feuil2 dans un autre
Module et faire un appel de ces procédures dans mon
Workbook_Open. qu'est ce que tu en penses?.
Pour faire appel à une procédure dans un module, qu'elle
syntaxe dois je utiliser. Si dans deux modules, j'ai le
même nom pour un procédure. Comment dois je faire sans
devoir changer le nom de ma procédure
J'espére être compréhensible.
Nicolas-----Message d'origine-----
Re,
De rien ;-))
Qu'appelles-tu "code de la feuil1" ? Peux-tu donner un
exemple ?
Est-ce que le traitement à lancer est le même pour
chaque feuille, ou pas du tout ?Bonjour
Merci de ton et de votre aide.
Concernant ton conseil de créer mon code dans un module.
J'ai plusieurs feuilles dans mon fichier Excel. Je peux
donc avoir un module pour l'ensemble du code de la
feuil1puis un autre module pour l'ensemble du code dans
feuil2.Dans mon WorkBook_Open, est il possible de lui dire
qu'ildoit aller chercher le code dans ce module avec le nom
dece code.
Public Sub Workbook_Open()
Module toto LancerProcedure
Module titi LancerProcedure
End Sub
J'espére être compréhensible
Merci de votre aide
Nicolas-----Message d'origine-----
Bonsoir,
Le mot clef Public est inutile : une Sub non précédée
dumot clef Private est Public.
Par ailleurs, pourquoi places-tu LancerProcedure()
dans le module de la feuille 1 ? Ces modules sont
destinés uniquement à gérer les événements de la
feuille(Activate, Deactivete, Change, ...), ce qui ne semble
pasêtre le cas.
Pour les mêmes raisons les procédures gérant les
événements relatifs au classeur doivent impérativement
être dans le module rattaché au classeur (Thisworkbook)
Transfère LancerProcedure() dans un module standard
sans ni Private, ni Public, et tu pourras y accéder
depuisn'importe quel module du projet :
Dans le module de ThisWorkbook :
Public Sub Workbook_Open()
LancerProcedure ' pas de qualificatif devant
End Sub
Dans un module standard
Sub LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End SubBonjour,
J'aimerais avoir un renseignement. Je souhaite
déclencherdes procédures lors de l'ouverture de mon fichier
Excelmais je n'y arrive pas. Pourriez vois si ma méthode
estcorrecte.
J'ai donc dans mon workbook ceci:
Public Sub Workbook_Open()
Feuil1.LancerProcedure
End Sub
et dans ma feuil1 ceci
Sub Public LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End Sub
MaProcedure1 etc sont en Public
Je n'arrive pas à lancer depuis mon Workbook_Open mes
procédures dans ma feuil1. Je ne vois pas mon erreur.
Pourriez vous m'aider SVP. J'ai peut être oubliè
quelquechose !!.
Si je fais ceci dans ma feuil1 en Activate alors cela
marche !!.
Sub Worksheet_Activate()
LancerProcedure
End Sub
Sub Public LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End Sub
Merci
Nicolas
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
.
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
.
-----Message d'origine-----
Re,
De rien ;-))
Private Sub Workbook_Open()
Feuil1.MaProc
Feuil2.MaProc
End Sub
Effectivement, ce serait plus propre de transférer le code
des différentes feuilles dans un module standard (ou
plusieurs modules si les lignes de codes sont très nom-
breuses).
Tu pourrais d'ailleurs créer autant de modules que de
feuil-
les et les nommer M1, M2, ... en reprenant la
numérotations
des feuilles et mettre dans chaque module le code destiné
à la
feuille correspondante, ce qui résoudrait tes conflits de
noms.
Les modules standards présentent des avantages, comme la
possibilité de définir des variables Public, ce qui n'est
pas
fonctionnel dans un module de feuille (ou de UserForm).
Par ailleurs, bien souvent une partie du code sert pour
plusieurs feuilles. Cela ne sert à rien d'avoir ce code
plu-
sieurs fois dans le projet.
Enfin, le fait de limiter les modules de feuille à ce qui
est
événementiel améliore la lisibilité du code : il est plus
facile de voir quels événements sont gérés, et de trouver
le
code correspondant.Merci Michel,
Quand je parle de la feuil1 je veux dire le code qui
correspond à l'onglet par exemple Reporting mais pour
VBA
c'est Feuil1(REPORTING).
Concernant l'exemple, je suis désolé mais je ne suis pas
sur le bon ordinateur, je ne peux te montrer un exemple.
Dans ma feuil1 j'ai plusieurs procédures. J'ai des
procédures pour récupérer des données depuis Access,
j'ai
des pocédures pour le formatage.
J'ai récupéré le nom de mes procédures dans une seule et
je fais appel à cette procédure dans mon Workook_Open.
J'ai utilisé cette technique dans plusieurs feuilles VBA
et j'ai malheureusement des noms de pocédures identiques
dans la feuil1 et la feuil2 par exemple.
Je pense que ma méthode de travail vis à vis de excel
n'est pas bonne. J'aurais peut être du regrouper mes
procédures dans un modules car mon code n'est pas de
l'événementiel.
Est il possible de mettre tout mon code de la Feuil1
dans
un Module puis tout mon code de ma feuil2 dans un autre
Module et faire un appel de ces procédures dans mon
Workbook_Open. qu'est ce que tu en penses?.
Pour faire appel à une procédure dans un module, qu'elle
syntaxe dois je utiliser. Si dans deux modules, j'ai le
même nom pour un procédure. Comment dois je faire sans
devoir changer le nom de ma procédure
J'espére être compréhensible.
Nicolas-----Message d'origine-----
Re,
De rien ;-))
Qu'appelles-tu "code de la feuil1" ? Peux-tu donner un
exemple ?
Est-ce que le traitement à lancer est le même pour
chaque feuille, ou pas du tout ?Bonjour
Merci de ton et de votre aide.
Concernant ton conseil de créer mon code dans un
module.
J'ai plusieurs feuilles dans mon fichier Excel. Je
peux
donc avoir un module pour l'ensemble du code de la
feuil1puis un autre module pour l'ensemble du code dans
feuil2.Dans mon WorkBook_Open, est il possible de lui dire
qu'ildoit aller chercher le code dans ce module avec le
nom
dece code.
Public Sub Workbook_Open()
Module toto LancerProcedure
Module titi LancerProcedure
End Sub
J'espére être compréhensible
Merci de votre aide
Nicolas-----Message d'origine-----
Bonsoir,
Le mot clef Public est inutile : une Sub non
précédée
dumot clef Private est Public.
Par ailleurs, pourquoi places-tu LancerProcedure()
dans le module de la feuille 1 ? Ces modules sont
destinés uniquement à gérer les événements de la
feuille(Activate, Deactivete, Change, ...), ce qui ne
semble
pasêtre le cas.
Pour les mêmes raisons les procédures gérant les
événements relatifs au classeur doivent
impérativement
être dans le module rattaché au classeur
(Thisworkbook)
Transfère LancerProcedure() dans un module standard
sans ni Private, ni Public, et tu pourras y accéder
depuisn'importe quel module du projet :
Dans le module de ThisWorkbook :
Public Sub Workbook_Open()
LancerProcedure ' pas de qualificatif devant
End Sub
Dans un module standard
Sub LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End SubBonjour,
J'aimerais avoir un renseignement. Je souhaite
déclencherdes procédures lors de l'ouverture de mon fichier
Excelmais je n'y arrive pas. Pourriez vois si ma
méthode
estcorrecte.
J'ai donc dans mon workbook ceci:
Public Sub Workbook_Open()
Feuil1.LancerProcedure
End Sub
et dans ma feuil1 ceci
Sub Public LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End Sub
MaProcedure1 etc sont en Public
Je n'arrive pas à lancer depuis mon Workbook_Open
mes
procédures dans ma feuil1. Je ne vois pas mon
erreur.
Pourriez vous m'aider SVP. J'ai peut être oubliè
quelquechose !!.
Si je fais ceci dans ma feuil1 en Activate alors
cela
marche !!.
Sub Worksheet_Activate()
LancerProcedure
End Sub
Sub Public LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End Sub
Merci
Nicolas
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
.
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
.
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
.
-----Message d'origine-----
Re,
De rien ;-))
Private Sub Workbook_Open()
Feuil1.MaProc
Feuil2.MaProc
End Sub
Effectivement, ce serait plus propre de transférer le code
des différentes feuilles dans un module standard (ou
plusieurs modules si les lignes de codes sont très nom-
breuses).
Tu pourrais d'ailleurs créer autant de modules que de
feuil-
les et les nommer M1, M2, ... en reprenant la
numérotations
des feuilles et mettre dans chaque module le code destiné
à la
feuille correspondante, ce qui résoudrait tes conflits de
noms.
Les modules standards présentent des avantages, comme la
possibilité de définir des variables Public, ce qui n'est
pas
fonctionnel dans un module de feuille (ou de UserForm).
Par ailleurs, bien souvent une partie du code sert pour
plusieurs feuilles. Cela ne sert à rien d'avoir ce code
plu-
sieurs fois dans le projet.
Enfin, le fait de limiter les modules de feuille à ce qui
est
événementiel améliore la lisibilité du code : il est plus
facile de voir quels événements sont gérés, et de trouver
le
code correspondant.
Merci Michel,
Quand je parle de la feuil1 je veux dire le code qui
correspond à l'onglet par exemple Reporting mais pour
VBA
c'est Feuil1(REPORTING).
Concernant l'exemple, je suis désolé mais je ne suis pas
sur le bon ordinateur, je ne peux te montrer un exemple.
Dans ma feuil1 j'ai plusieurs procédures. J'ai des
procédures pour récupérer des données depuis Access,
j'ai
des pocédures pour le formatage.
J'ai récupéré le nom de mes procédures dans une seule et
je fais appel à cette procédure dans mon Workook_Open.
J'ai utilisé cette technique dans plusieurs feuilles VBA
et j'ai malheureusement des noms de pocédures identiques
dans la feuil1 et la feuil2 par exemple.
Je pense que ma méthode de travail vis à vis de excel
n'est pas bonne. J'aurais peut être du regrouper mes
procédures dans un modules car mon code n'est pas de
l'événementiel.
Est il possible de mettre tout mon code de la Feuil1
dans
un Module puis tout mon code de ma feuil2 dans un autre
Module et faire un appel de ces procédures dans mon
Workbook_Open. qu'est ce que tu en penses?.
Pour faire appel à une procédure dans un module, qu'elle
syntaxe dois je utiliser. Si dans deux modules, j'ai le
même nom pour un procédure. Comment dois je faire sans
devoir changer le nom de ma procédure
J'espére être compréhensible.
Nicolas
-----Message d'origine-----
Re,
De rien ;-))
Qu'appelles-tu "code de la feuil1" ? Peux-tu donner un
exemple ?
Est-ce que le traitement à lancer est le même pour
chaque feuille, ou pas du tout ?
Bonjour
Merci de ton et de votre aide.
Concernant ton conseil de créer mon code dans un
module.
J'ai plusieurs feuilles dans mon fichier Excel. Je
peux
donc avoir un module pour l'ensemble du code de la
feuil1
puis un autre module pour l'ensemble du code dans
feuil2.
Dans mon WorkBook_Open, est il possible de lui dire
qu'il
doit aller chercher le code dans ce module avec le
nom
de
ce code.
Public Sub Workbook_Open()
Module toto LancerProcedure
Module titi LancerProcedure
End Sub
J'espére être compréhensible
Merci de votre aide
Nicolas
-----Message d'origine-----
Bonsoir,
Le mot clef Public est inutile : une Sub non
précédée
du
mot clef Private est Public.
Par ailleurs, pourquoi places-tu LancerProcedure()
dans le module de la feuille 1 ? Ces modules sont
destinés uniquement à gérer les événements de la
feuille
(Activate, Deactivete, Change, ...), ce qui ne
semble
pas
être le cas.
Pour les mêmes raisons les procédures gérant les
événements relatifs au classeur doivent
impérativement
être dans le module rattaché au classeur
(Thisworkbook)
Transfère LancerProcedure() dans un module standard
sans ni Private, ni Public, et tu pourras y accéder
depuis
n'importe quel module du projet :
Dans le module de ThisWorkbook :
Public Sub Workbook_Open()
LancerProcedure ' pas de qualificatif devant
End Sub
Dans un module standard
Sub LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End Sub
Bonjour,
J'aimerais avoir un renseignement. Je souhaite
déclencher
des procédures lors de l'ouverture de mon fichier
Excel
mais je n'y arrive pas. Pourriez vois si ma
méthode
est
correcte.
J'ai donc dans mon workbook ceci:
Public Sub Workbook_Open()
Feuil1.LancerProcedure
End Sub
et dans ma feuil1 ceci
Sub Public LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End Sub
MaProcedure1 etc sont en Public
Je n'arrive pas à lancer depuis mon Workbook_Open
mes
procédures dans ma feuil1. Je ne vois pas mon
erreur.
Pourriez vous m'aider SVP. J'ai peut être oubliè
quelque
chose !!.
Si je fais ceci dans ma feuil1 en Activate alors
cela
marche !!.
Sub Worksheet_Activate()
LancerProcedure
End Sub
Sub Public LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End Sub
Merci
Nicolas
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
.
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
.
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
.
-----Message d'origine-----
Re,
De rien ;-))
Private Sub Workbook_Open()
Feuil1.MaProc
Feuil2.MaProc
End Sub
Effectivement, ce serait plus propre de transférer le code
des différentes feuilles dans un module standard (ou
plusieurs modules si les lignes de codes sont très nom-
breuses).
Tu pourrais d'ailleurs créer autant de modules que de
feuil-
les et les nommer M1, M2, ... en reprenant la
numérotations
des feuilles et mettre dans chaque module le code destiné
à la
feuille correspondante, ce qui résoudrait tes conflits de
noms.
Les modules standards présentent des avantages, comme la
possibilité de définir des variables Public, ce qui n'est
pas
fonctionnel dans un module de feuille (ou de UserForm).
Par ailleurs, bien souvent une partie du code sert pour
plusieurs feuilles. Cela ne sert à rien d'avoir ce code
plu-
sieurs fois dans le projet.
Enfin, le fait de limiter les modules de feuille à ce qui
est
événementiel améliore la lisibilité du code : il est plus
facile de voir quels événements sont gérés, et de trouver
le
code correspondant.Merci Michel,
Quand je parle de la feuil1 je veux dire le code qui
correspond à l'onglet par exemple Reporting mais pour
VBA
c'est Feuil1(REPORTING).
Concernant l'exemple, je suis désolé mais je ne suis pas
sur le bon ordinateur, je ne peux te montrer un exemple.
Dans ma feuil1 j'ai plusieurs procédures. J'ai des
procédures pour récupérer des données depuis Access,
j'ai
des pocédures pour le formatage.
J'ai récupéré le nom de mes procédures dans une seule et
je fais appel à cette procédure dans mon Workook_Open.
J'ai utilisé cette technique dans plusieurs feuilles VBA
et j'ai malheureusement des noms de pocédures identiques
dans la feuil1 et la feuil2 par exemple.
Je pense que ma méthode de travail vis à vis de excel
n'est pas bonne. J'aurais peut être du regrouper mes
procédures dans un modules car mon code n'est pas de
l'événementiel.
Est il possible de mettre tout mon code de la Feuil1
dans
un Module puis tout mon code de ma feuil2 dans un autre
Module et faire un appel de ces procédures dans mon
Workbook_Open. qu'est ce que tu en penses?.
Pour faire appel à une procédure dans un module, qu'elle
syntaxe dois je utiliser. Si dans deux modules, j'ai le
même nom pour un procédure. Comment dois je faire sans
devoir changer le nom de ma procédure
J'espére être compréhensible.
Nicolas-----Message d'origine-----
Re,
De rien ;-))
Qu'appelles-tu "code de la feuil1" ? Peux-tu donner un
exemple ?
Est-ce que le traitement à lancer est le même pour
chaque feuille, ou pas du tout ?Bonjour
Merci de ton et de votre aide.
Concernant ton conseil de créer mon code dans un
module.
J'ai plusieurs feuilles dans mon fichier Excel. Je
peux
donc avoir un module pour l'ensemble du code de la
feuil1puis un autre module pour l'ensemble du code dans
feuil2.Dans mon WorkBook_Open, est il possible de lui dire
qu'ildoit aller chercher le code dans ce module avec le
nom
dece code.
Public Sub Workbook_Open()
Module toto LancerProcedure
Module titi LancerProcedure
End Sub
J'espére être compréhensible
Merci de votre aide
Nicolas-----Message d'origine-----
Bonsoir,
Le mot clef Public est inutile : une Sub non
précédée
dumot clef Private est Public.
Par ailleurs, pourquoi places-tu LancerProcedure()
dans le module de la feuille 1 ? Ces modules sont
destinés uniquement à gérer les événements de la
feuille(Activate, Deactivete, Change, ...), ce qui ne
semble
pasêtre le cas.
Pour les mêmes raisons les procédures gérant les
événements relatifs au classeur doivent
impérativement
être dans le module rattaché au classeur
(Thisworkbook)
Transfère LancerProcedure() dans un module standard
sans ni Private, ni Public, et tu pourras y accéder
depuisn'importe quel module du projet :
Dans le module de ThisWorkbook :
Public Sub Workbook_Open()
LancerProcedure ' pas de qualificatif devant
End Sub
Dans un module standard
Sub LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End SubBonjour,
J'aimerais avoir un renseignement. Je souhaite
déclencherdes procédures lors de l'ouverture de mon fichier
Excelmais je n'y arrive pas. Pourriez vois si ma
méthode
estcorrecte.
J'ai donc dans mon workbook ceci:
Public Sub Workbook_Open()
Feuil1.LancerProcedure
End Sub
et dans ma feuil1 ceci
Sub Public LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End Sub
MaProcedure1 etc sont en Public
Je n'arrive pas à lancer depuis mon Workbook_Open
mes
procédures dans ma feuil1. Je ne vois pas mon
erreur.
Pourriez vous m'aider SVP. J'ai peut être oubliè
quelquechose !!.
Si je fais ceci dans ma feuil1 en Activate alors
cela
marche !!.
Sub Worksheet_Activate()
LancerProcedure
End Sub
Sub Public LancerProcedure()
MaProcedure1
MaProcedure2
MaProcedure3
MaProcedure4
End Sub
Merci
Nicolas
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
.
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
.
--
Cordialement,
Michel Gaboly
http://www.gaboly.com
.