En cliquant sur un bouton, la construction d'une page est lancée par la
procédure ci-dessous.
La construction se passe bien jusqu'à la partie devant écrire le code sur le
module code de la feuille, "With ThisWorkBook.VBProject...etc".
Aprés quelques secondes d'attentes, erreur critique et tout se ferme.
Essai d'une autre forme "Application.VBE.ActiveVBProject...etc", même
punition.
Où me suis-je planté?
Merci pour votre temps.
Joël
Sur la dernière ligne de code, "Feuil1" n'est pas le nom de l'onglet de la feuille, mais la propriété Name de l'objet feuille visible seulement dans la fenêtre de l'éditeur de code.
Dans la petite fenêtre de gauche "Projet-VBAProject, sélectionne d'abord le nom du projet vba : VBAProjet(NomDeTonclasseur.xls) . En cliquant sur le plus devant l'appellation, tu vas afficher les objets du projet. Pour ce qui est des feuilles, elles sont listées de cette manière : Feuil1(toto) Feuil2(Bozo) Feuil3(cadeau)
La première partie : Feuil1 , Feuil2, Feuil3, représente la propriété Name de chacune des feuilles La deuxième partie toto, bozo, cadeau, représente le nom des onglets de la feuille.
Dans la ligne de code suivante, c'est la propriété de la feuille que tu dois insérer et non le nom de l'onglet de la feuille. ThisWorkbook.VBProject.VBComponents("Feuil1").CodeModule.AddFromString Code
Une autre façon de faire (d'écrire la ligne de code) '------------------------------ With ThisWorkbook With .VBProject.VBComponents(.Worksheets("toto").CodeName) .CodeModule.AddFromString Code End With End With '------------------------------
Ceci Worksheets("toto").CodeName retourne le nom de la propriété de la feuille dont le nom de l'onglet est "Toto"
N.B. Pour exécuter la macro décrite dans ce message, tu n'as pas besoin d'utiliser ceci : "Microsoft visual basic for applications extensibility 5.3"
Sur la dernière ligne de code, "Feuil1" n'est pas le nom de l'onglet de la feuille, mais
la propriété Name de l'objet feuille visible seulement dans la fenêtre de l'éditeur de code.
Dans la petite fenêtre de gauche "Projet-VBAProject, sélectionne d'abord le nom du
projet vba : VBAProjet(NomDeTonclasseur.xls) . En cliquant sur le plus devant l'appellation,
tu vas afficher les objets du projet. Pour ce qui est des feuilles, elles sont listées de cette
manière :
Feuil1(toto)
Feuil2(Bozo)
Feuil3(cadeau)
La première partie : Feuil1 , Feuil2, Feuil3, représente la propriété Name de chacune des feuilles
La deuxième partie toto, bozo, cadeau, représente le nom des onglets de la feuille.
Dans la ligne de code suivante, c'est la propriété de la feuille que tu dois insérer et non le nom
de l'onglet de la feuille.
ThisWorkbook.VBProject.VBComponents("Feuil1").CodeModule.AddFromString Code
Une autre façon de faire (d'écrire la ligne de code)
'------------------------------
With ThisWorkbook
With .VBProject.VBComponents(.Worksheets("toto").CodeName)
.CodeModule.AddFromString Code
End With
End With
'------------------------------
Ceci Worksheets("toto").CodeName retourne le nom de la propriété de la feuille dont le nom de l'onglet est "Toto"
N.B. Pour exécuter la macro décrite dans ce message, tu n'as pas besoin d'utiliser ceci :
"Microsoft visual basic for applications extensibility 5.3"
Sur la dernière ligne de code, "Feuil1" n'est pas le nom de l'onglet de la feuille, mais la propriété Name de l'objet feuille visible seulement dans la fenêtre de l'éditeur de code.
Dans la petite fenêtre de gauche "Projet-VBAProject, sélectionne d'abord le nom du projet vba : VBAProjet(NomDeTonclasseur.xls) . En cliquant sur le plus devant l'appellation, tu vas afficher les objets du projet. Pour ce qui est des feuilles, elles sont listées de cette manière : Feuil1(toto) Feuil2(Bozo) Feuil3(cadeau)
La première partie : Feuil1 , Feuil2, Feuil3, représente la propriété Name de chacune des feuilles La deuxième partie toto, bozo, cadeau, représente le nom des onglets de la feuille.
Dans la ligne de code suivante, c'est la propriété de la feuille que tu dois insérer et non le nom de l'onglet de la feuille. ThisWorkbook.VBProject.VBComponents("Feuil1").CodeModule.AddFromString Code
Une autre façon de faire (d'écrire la ligne de code) '------------------------------ With ThisWorkbook With .VBProject.VBComponents(.Worksheets("toto").CodeName) .CodeModule.AddFromString Code End With End With '------------------------------
Ceci Worksheets("toto").CodeName retourne le nom de la propriété de la feuille dont le nom de l'onglet est "Toto"
N.B. Pour exécuter la macro décrite dans ce message, tu n'as pas besoin d'utiliser ceci : "Microsoft visual basic for applications extensibility 5.3"
Sur la dernière ligne de code, "Feuil1" n'est pas le nom de l'onglet de la feuille, mais la propriété Name de l'objet feuille visible seulement dans la fenêtre de l'éditeur de code.
Dans la petite fenêtre de gauche "Projet-VBAProject, sélectionne d'abord le nom du projet vba : VBAProjet(NomDeTonclasseur.xls) . En cliquant sur le plus devant l'appellation, tu vas afficher les objets du projet. Pour ce qui est des feuilles, elles sont listées de cette manière : Feuil1(toto) Feuil2(Bozo) Feuil3(cadeau)
La première partie : Feuil1 , Feuil2, Feuil3, représente la propriété Name de chacune des feuilles La deuxième partie toto, bozo, cadeau, représente le nom des onglets de la feuille.
Dans la ligne de code suivante, c'est la propriété de la feuille que tu dois insérer et non le nom de l'onglet de la feuille. ThisWorkbook.VBProject.VBComponents("Feuil1").CodeModule.AddFromString Code
Une autre façon de faire (d'écrire la ligne de code) '------------------------------ With ThisWorkbook With .VBProject.VBComponents(.Worksheets("toto").CodeName) .CodeModule.AddFromString Code End With End With '------------------------------
Ceci Worksheets("toto").CodeName retourne le nom de la propriété de la feuille dont le nom de l'onglet est "Toto"
N.B. Pour exécuter la macro décrite dans ce message, tu n'as pas besoin d'utiliser ceci : "Microsoft visual basic for applications extensibility 5.3"
Sur la dernière ligne de code, "Feuil1" n'est pas le nom de l'onglet de la feuille, mais
la propriété Name de l'objet feuille visible seulement dans la fenêtre de l'éditeur de code.
Dans la petite fenêtre de gauche "Projet-VBAProject, sélectionne d'abord le nom du
projet vba : VBAProjet(NomDeTonclasseur.xls) . En cliquant sur le plus devant l'appellation,
tu vas afficher les objets du projet. Pour ce qui est des feuilles, elles sont listées de cette
manière :
Feuil1(toto)
Feuil2(Bozo)
Feuil3(cadeau)
La première partie : Feuil1 , Feuil2, Feuil3, représente la propriété Name de chacune des feuilles
La deuxième partie toto, bozo, cadeau, représente le nom des onglets de la feuille.
Dans la ligne de code suivante, c'est la propriété de la feuille que tu dois insérer et non le nom
de l'onglet de la feuille.
ThisWorkbook.VBProject.VBComponents("Feuil1").CodeModule.AddFromString Code
Une autre façon de faire (d'écrire la ligne de code)
'------------------------------
With ThisWorkbook
With .VBProject.VBComponents(.Worksheets("toto").CodeName)
.CodeModule.AddFromString Code
End With
End With
'------------------------------
Ceci Worksheets("toto").CodeName retourne le nom de la propriété de la feuille dont le nom de l'onglet est "Toto"
N.B. Pour exécuter la macro décrite dans ce message, tu n'as pas besoin d'utiliser ceci :
"Microsoft visual basic for applications extensibility 5.3"
Sur la dernière ligne de code, "Feuil1" n'est pas le nom de l'onglet de la feuille, mais la propriété Name de l'objet feuille visible seulement dans la fenêtre de l'éditeur de code.
Dans la petite fenêtre de gauche "Projet-VBAProject, sélectionne d'abord le nom du projet vba : VBAProjet(NomDeTonclasseur.xls) . En cliquant sur le plus devant l'appellation, tu vas afficher les objets du projet. Pour ce qui est des feuilles, elles sont listées de cette manière : Feuil1(toto) Feuil2(Bozo) Feuil3(cadeau)
La première partie : Feuil1 , Feuil2, Feuil3, représente la propriété Name de chacune des feuilles La deuxième partie toto, bozo, cadeau, représente le nom des onglets de la feuille.
Dans la ligne de code suivante, c'est la propriété de la feuille que tu dois insérer et non le nom de l'onglet de la feuille. ThisWorkbook.VBProject.VBComponents("Feuil1").CodeModule.AddFromString Code
Une autre façon de faire (d'écrire la ligne de code) '------------------------------ With ThisWorkbook With .VBProject.VBComponents(.Worksheets("toto").CodeName) .CodeModule.AddFromString Code End With End With '------------------------------
Ceci Worksheets("toto").CodeName retourne le nom de la propriété de la feuille dont le nom de l'onglet est "Toto"
N.B. Pour exécuter la macro décrite dans ce message, tu n'as pas besoin d'utiliser ceci : "Microsoft visual basic for applications extensibility 5.3"
MichD ------------------------------------------
Joël André
Merci MichD, Grâce à tes conseils, tout fonctionne. Merci, merci beaucoup.
"MichD" a écrit dans le message de news: j8h2ra$lhu$
Sur la dernière ligne de code, "Feuil1" n'est pas le nom de l'onglet de la feuille, mais la propriété Name de l'objet feuille visible seulement dans la fenêtre de l'éditeur de code.
Dans la petite fenêtre de gauche "Projet-VBAProject, sélectionne d'abord le nom du projet vba : VBAProjet(NomDeTonclasseur.xls) . En cliquant sur le plus devant l'appellation, tu vas afficher les objets du projet. Pour ce qui est des feuilles, elles sont listées de cette manière : Feuil1(toto) Feuil2(Bozo) Feuil3(cadeau)
La première partie : Feuil1 , Feuil2, Feuil3, représente la propriété Name de chacune des feuilles La deuxième partie toto, bozo, cadeau, représente le nom des onglets de la feuille.
Dans la ligne de code suivante, c'est la propriété de la feuille que tu dois insérer et non le nom de l'onglet de la feuille. ThisWorkbook.VBProject.VBComponents("Feuil1").CodeModule.AddFromString Code
Une autre façon de faire (d'écrire la ligne de code) '------------------------------ With ThisWorkbook With .VBProject.VBComponents(.Worksheets("toto").CodeName) .CodeModule.AddFromString Code End With End With '------------------------------
Ceci Worksheets("toto").CodeName retourne le nom de la propriété de la feuille dont le nom de l'onglet est "Toto"
N.B. Pour exécuter la macro décrite dans ce message, tu n'as pas besoin d'utiliser ceci : "Microsoft visual basic for applications extensibility 5.3"
MichD ------------------------------------------
Merci MichD,
Grâce à tes conseils, tout fonctionne.
Merci, merci beaucoup.
"MichD" <michdenis@hotmail.com> a écrit dans le message de news:
j8h2ra$lhu$1@speranza.aioe.org...
Sur la dernière ligne de code, "Feuil1" n'est pas le nom de l'onglet de la
feuille, mais
la propriété Name de l'objet feuille visible seulement dans la fenêtre de
l'éditeur de code.
Dans la petite fenêtre de gauche "Projet-VBAProject, sélectionne d'abord
le nom du
projet vba : VBAProjet(NomDeTonclasseur.xls) . En cliquant sur le plus
devant l'appellation,
tu vas afficher les objets du projet. Pour ce qui est des feuilles, elles
sont listées de cette
manière :
Feuil1(toto)
Feuil2(Bozo)
Feuil3(cadeau)
La première partie : Feuil1 , Feuil2, Feuil3, représente la propriété Name
de chacune des feuilles
La deuxième partie toto, bozo, cadeau, représente le nom des onglets de la
feuille.
Dans la ligne de code suivante, c'est la propriété de la feuille que tu
dois insérer et non le nom
de l'onglet de la feuille.
ThisWorkbook.VBProject.VBComponents("Feuil1").CodeModule.AddFromString
Code
Une autre façon de faire (d'écrire la ligne de code)
'------------------------------
With ThisWorkbook
With .VBProject.VBComponents(.Worksheets("toto").CodeName)
.CodeModule.AddFromString Code
End With
End With
'------------------------------
Ceci Worksheets("toto").CodeName retourne le nom de la propriété de la
feuille dont le nom de l'onglet est "Toto"
N.B. Pour exécuter la macro décrite dans ce message, tu n'as pas besoin
d'utiliser ceci :
"Microsoft visual basic for applications extensibility 5.3"
Sur la dernière ligne de code, "Feuil1" n'est pas le nom de l'onglet de la feuille, mais la propriété Name de l'objet feuille visible seulement dans la fenêtre de l'éditeur de code.
Dans la petite fenêtre de gauche "Projet-VBAProject, sélectionne d'abord le nom du projet vba : VBAProjet(NomDeTonclasseur.xls) . En cliquant sur le plus devant l'appellation, tu vas afficher les objets du projet. Pour ce qui est des feuilles, elles sont listées de cette manière : Feuil1(toto) Feuil2(Bozo) Feuil3(cadeau)
La première partie : Feuil1 , Feuil2, Feuil3, représente la propriété Name de chacune des feuilles La deuxième partie toto, bozo, cadeau, représente le nom des onglets de la feuille.
Dans la ligne de code suivante, c'est la propriété de la feuille que tu dois insérer et non le nom de l'onglet de la feuille. ThisWorkbook.VBProject.VBComponents("Feuil1").CodeModule.AddFromString Code
Une autre façon de faire (d'écrire la ligne de code) '------------------------------ With ThisWorkbook With .VBProject.VBComponents(.Worksheets("toto").CodeName) .CodeModule.AddFromString Code End With End With '------------------------------
Ceci Worksheets("toto").CodeName retourne le nom de la propriété de la feuille dont le nom de l'onglet est "Toto"
N.B. Pour exécuter la macro décrite dans ce message, tu n'as pas besoin d'utiliser ceci : "Microsoft visual basic for applications extensibility 5.3"