J'ai encore une question. J'ai une application qui cr=E9=E9=20
et d=E9truit des feuilles de calcul. Lors de la cr=E9ation,=20
je souhaite lui affect=E9 du code pour Worksheet_Activate()=20
et Worksheet_Deactivate() afin d'afficher ou non=20
certaines barres d'outils en fonction du nom de la=20
feuille. Le code en lui m=EAme ne me pose pas de probl=E8me=20
mais c'est la saisie du code =E0 la cr=E9ation de la feuille=20
que je n'ai pas trouv=E9. J'ai bien trouv=E9 un site avec=20
l'ajout d'un module lors de la cr=E9ation d'un classeur=20
(merci J@C) mais pas pour mon cas particulier.
Je te remercie pour ton aide, cela fonctionne parfaitement.
Encore merci
a bientot
frvn
-----Message d'origine----- Ah ben non ça ne peut pas marcher, il faut utiliser le CodeName de la
feuille pour que cela fonctionne. Donc il faut modifier avec quelque chose comme ça : With ActiveWorkbook.VBProject.VBComponents(Worksheets ("Tri").CodeName)
Cordialement Pascal
"FRVN" a écrit dans le message de
news:4de401c473de$7301ac80$ Re
Merci mais meme avec ActiveWorkbook.VBProject.VBComponents
("Tri")
il ne veut pas. Dés lors que je lui spécifie un nom, il refuse. ça fonctionne chez toi ?
Désolé encore pour le dérangement
FRVN
-----Message d'origine-----
With ActiveWorkbook.VBProject.VBComponents(Tri) il faut ajouter les guillemets "" soit donc
With ActiveWorkbook.VBProject.VBComponents("Tri")
Cordialement Pascal
"FRVN" a écrit dans le message de
news:4e3d01c473db$330c6960$ rebonjour,
Merci pour tes réponses. Je dois etre vraiment pas bon car meme avec ça, je n'y arrive pas. voici le code complet de test :
Sub create()
Dim DebLigne As Long
On Error Resume Next x = Sheets("Tri").[A1] If Err.Number <> 0 Then Sheets.Add Type:=xlWorksheet, before:¬tiveSheet ActiveSheet.Name = "Tri" End If
With ActiveWorkbook.VBProject.VBComponents (Tri).CodeModule
DebLigne = .CreateEventProc("Activate", "Worksheet") + 1 .InsertLines DebLigne, "Msgbox ""Je viens d'être créé"",vbOkOnly" .InsertLines DebLigne + 1, "Msgbox ""Ca marche ?"",vbOkOnly" End With
End Sub
Si j'utilise que ton code : pas de problème. Si je ne nomme pas la feuille avant : pas de problème mais dès lors que je donne un nom : c'est foutu, il ne fait plus rien. Désolé ! peux tu vérifier mon module ?
Merci d'avance et désolé de t'embeter encore
FRVN
-----Message d'origine----- re Dim DebLigne As Long With ActiveWorkbook.VBProject.VBComponents (ActiveSheet.Name).CodeModule
là je ne vois pas trop, je vais essayer d'etre plus clair, j'ai le code suivant pour créer une feuille Sheets.Add Type:=xlWorksheet, before:=Sheets("Questions niv 1") ActiveSheet.Name = "Tri" Je voudrai lui indiquer en VB lors de la création : un Worksheet_Activate() et un Worksheet_Deactivate() avec
certaines lignes de code
J'espère avoir été clair Merci pour les réponses.
frvn
-----Message d'origine----- Bonjour Si j'ai bien compris ? Voir l'évènement Workbook_NewSheet Cordialement Pascal
"FRVN" a écrit dans le message de
news:4d7701c473cf$358bdec0$ Bonjour à tous,
J'ai encore une question. J'ai une application qui créé
et détruit des feuilles de calcul. Lors de la création,
je souhaite lui affecté du code pour Worksheet_Activate
()
et Worksheet_Deactivate() afin d'afficher ou non certaines barres d'outils en fonction du nom de la feuille. Le code en lui même ne me pose pas de problème
mais c'est la saisie du code à la création de la feuille
que je n'ai pas trouvé. J'ai bien trouvé un site avec l'ajout d'un module lors de la création d'un classeur (merci ) mais pas pour mon cas particulier.
Merci à tous pour votre aide
FRVN
.
.
.
.
Re (Et c'est la dernière fois)
Je te remercie pour ton aide, cela fonctionne
parfaitement.
Encore merci
a bientot
frvn
-----Message d'origine-----
Ah ben non ça ne peut pas marcher, il faut utiliser le
CodeName de la
feuille pour que cela fonctionne.
Donc il faut modifier avec quelque chose comme ça :
With ActiveWorkbook.VBProject.VBComponents(Worksheets
("Tri").CodeName)
Cordialement
Pascal
"FRVN" <anonymous@discussions.microsoft.com> a écrit
dans le message de
news:4de401c473de$7301ac80$a601280a@phx.gbl...
Re
Merci mais meme avec
ActiveWorkbook.VBProject.VBComponents
("Tri")
il ne veut pas. Dés lors que je lui spécifie un nom, il
refuse. ça fonctionne chez toi ?
Désolé encore pour le dérangement
FRVN
-----Message d'origine-----
With ActiveWorkbook.VBProject.VBComponents(Tri)
il faut ajouter les guillemets "" soit donc
With ActiveWorkbook.VBProject.VBComponents("Tri")
Cordialement
Pascal
"FRVN" <anonymous@discussions.microsoft.com> a écrit
dans le message de
Merci pour tes réponses.
Je dois etre vraiment pas bon car meme avec ça, je n'y
arrive pas. voici le code complet de test :
Sub create()
Dim DebLigne As Long
On Error Resume Next
x = Sheets("Tri").[A1]
If Err.Number <> 0 Then
Sheets.Add Type:=xlWorksheet, before:=ActiveSheet
ActiveSheet.Name = "Tri"
End If
With ActiveWorkbook.VBProject.VBComponents
(Tri).CodeModule
DebLigne = .CreateEventProc("Activate", "Worksheet")
+ 1
.InsertLines DebLigne, "Msgbox ""Je viens d'être
créé"",vbOkOnly"
.InsertLines DebLigne + 1, "Msgbox ""Ca
marche ?"",vbOkOnly"
End With
End Sub
Si j'utilise que ton code : pas de problème. Si je ne
nomme pas la feuille avant : pas de problème mais dès
lors que je donne un nom : c'est foutu, il ne fait plus
rien. Désolé ! peux tu vérifier mon module ?
Merci d'avance et désolé de t'embeter encore
FRVN
-----Message d'origine-----
re
Dim DebLigne As Long
With ActiveWorkbook.VBProject.VBComponents
(ActiveSheet.Name).CodeModule
là je ne vois pas trop, je vais essayer d'etre plus
clair, j'ai le code suivant pour créer une feuille
Sheets.Add Type:=xlWorksheet, before:=Sheets("Questions
niv 1")
ActiveSheet.Name = "Tri"
Je voudrai lui indiquer en VB lors de la création :
un Worksheet_Activate() et un Worksheet_Deactivate()
avec
certaines lignes de code
J'espère avoir été clair
Merci pour les réponses.
frvn
-----Message d'origine-----
Bonjour
Si j'ai bien compris ?
Voir l'évènement Workbook_NewSheet
Cordialement
Pascal
"FRVN" <anonymous@discussions.microsoft.com> a écrit
dans le message de
news:4d7701c473cf$358bdec0$a301280a@phx.gbl...
Bonjour à tous,
J'ai encore une question. J'ai une application qui
créé
et détruit des feuilles de calcul. Lors de la
création,
je souhaite lui affecté du code pour
Worksheet_Activate
()
et Worksheet_Deactivate() afin d'afficher ou non
certaines barres d'outils en fonction du nom de la
feuille. Le code en lui même ne me pose pas de
problème
mais c'est la saisie du code à la création de la
feuille
que je n'ai pas trouvé. J'ai bien trouvé un site avec
l'ajout d'un module lors de la création d'un classeur
(merci J@C) mais pas pour mon cas particulier.
Je te remercie pour ton aide, cela fonctionne parfaitement.
Encore merci
a bientot
frvn
-----Message d'origine----- Ah ben non ça ne peut pas marcher, il faut utiliser le CodeName de la
feuille pour que cela fonctionne. Donc il faut modifier avec quelque chose comme ça : With ActiveWorkbook.VBProject.VBComponents(Worksheets ("Tri").CodeName)
Cordialement Pascal
"FRVN" a écrit dans le message de
news:4de401c473de$7301ac80$ Re
Merci mais meme avec ActiveWorkbook.VBProject.VBComponents
("Tri")
il ne veut pas. Dés lors que je lui spécifie un nom, il refuse. ça fonctionne chez toi ?
Désolé encore pour le dérangement
FRVN
-----Message d'origine-----
With ActiveWorkbook.VBProject.VBComponents(Tri) il faut ajouter les guillemets "" soit donc
With ActiveWorkbook.VBProject.VBComponents("Tri")
Cordialement Pascal
"FRVN" a écrit dans le message de
news:4e3d01c473db$330c6960$ rebonjour,
Merci pour tes réponses. Je dois etre vraiment pas bon car meme avec ça, je n'y arrive pas. voici le code complet de test :
Sub create()
Dim DebLigne As Long
On Error Resume Next x = Sheets("Tri").[A1] If Err.Number <> 0 Then Sheets.Add Type:=xlWorksheet, before:¬tiveSheet ActiveSheet.Name = "Tri" End If
With ActiveWorkbook.VBProject.VBComponents (Tri).CodeModule
DebLigne = .CreateEventProc("Activate", "Worksheet") + 1 .InsertLines DebLigne, "Msgbox ""Je viens d'être créé"",vbOkOnly" .InsertLines DebLigne + 1, "Msgbox ""Ca marche ?"",vbOkOnly" End With
End Sub
Si j'utilise que ton code : pas de problème. Si je ne nomme pas la feuille avant : pas de problème mais dès lors que je donne un nom : c'est foutu, il ne fait plus rien. Désolé ! peux tu vérifier mon module ?
Merci d'avance et désolé de t'embeter encore
FRVN
-----Message d'origine----- re Dim DebLigne As Long With ActiveWorkbook.VBProject.VBComponents (ActiveSheet.Name).CodeModule
là je ne vois pas trop, je vais essayer d'etre plus clair, j'ai le code suivant pour créer une feuille Sheets.Add Type:=xlWorksheet, before:=Sheets("Questions niv 1") ActiveSheet.Name = "Tri" Je voudrai lui indiquer en VB lors de la création : un Worksheet_Activate() et un Worksheet_Deactivate() avec
certaines lignes de code
J'espère avoir été clair Merci pour les réponses.
frvn
-----Message d'origine----- Bonjour Si j'ai bien compris ? Voir l'évènement Workbook_NewSheet Cordialement Pascal
"FRVN" a écrit dans le message de
news:4d7701c473cf$358bdec0$ Bonjour à tous,
J'ai encore une question. J'ai une application qui créé
et détruit des feuilles de calcul. Lors de la création,
je souhaite lui affecté du code pour Worksheet_Activate
()
et Worksheet_Deactivate() afin d'afficher ou non certaines barres d'outils en fonction du nom de la feuille. Le code en lui même ne me pose pas de problème
mais c'est la saisie du code à la création de la feuille
que je n'ai pas trouvé. J'ai bien trouvé un site avec l'ajout d'un module lors de la création d'un classeur (merci ) mais pas pour mon cas particulier.
Merci à tous pour votre aide
FRVN
.
.
.
.
papou
Bonjour Ca fonctionne avec VBE fermé pour ma part (avec Excel 2003). Cordialement Pascal
"Vincent." a écrit dans le message de news:4e9401c473e0$907f0ad0$
Ah ben non ça ne peut pas marcher, il faut utiliser le CodeName de la
feuille pour que cela fonctionne. Donc il faut modifier avec quelque chose comme ça : With ActiveWorkbook.VBProject.VBComponents(Worksheets ("Tri").CodeName)
A mon avis, ça ne fonctionnera pas si VBE est fermé ! voir mon précédent post pour l'afficher Sinon, je suis d'accord, ça doit marcher !
Bonjour
Ca fonctionne avec VBE fermé pour ma part (avec Excel 2003).
Cordialement
Pascal
"Vincent." <vincnet.N0SP@MfallasATfr.pwc.com> a écrit dans le message de
news:4e9401c473e0$907f0ad0$a301280a@phx.gbl...
Ah ben non ça ne peut pas marcher, il faut utiliser le
CodeName de la
feuille pour que cela fonctionne.
Donc il faut modifier avec quelque chose comme ça :
With ActiveWorkbook.VBProject.VBComponents(Worksheets
("Tri").CodeName)
A mon avis, ça ne fonctionnera pas si VBE est fermé !
voir mon précédent post pour l'afficher
Sinon, je suis d'accord, ça doit marcher !
Bonjour Ca fonctionne avec VBE fermé pour ma part (avec Excel 2003). Cordialement Pascal
"Vincent." a écrit dans le message de news:4e9401c473e0$907f0ad0$
Ah ben non ça ne peut pas marcher, il faut utiliser le CodeName de la
feuille pour que cela fonctionne. Donc il faut modifier avec quelque chose comme ça : With ActiveWorkbook.VBProject.VBComponents(Worksheets ("Tri").CodeName)
A mon avis, ça ne fonctionnera pas si VBE est fermé ! voir mon précédent post pour l'afficher Sinon, je suis d'accord, ça doit marcher !