Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Affichage d'une page à l'ouverture du classeur

10 réponses
Avatar
JFL
Bonjour à tous,

J'ai un classeur, contenant du code et plusieurs feuilles.

Afin de faciliter le travail de mon Boss, je voudrais qu'à l'ouverture
du classeur, la feuille nommée "Accueil" s'affiche automatiquement.

J'ai trouvé sur un site ( ;=))) ) l'astuce suivante :

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Sheets("Accueil").Range("A1").Select
End Sub


( module ThisWorkBook )


Mais à la fermeture du classeur j'ai une erreur 1004 !!!


Merci à l'avance pour vos pertinentes réflexions !


JF

10 réponses

Avatar
Fred.M.
Bonjour JFL,
Essaie tout simplement sur l'évènement Open de ton même Workbooks :-)

Private Sub Workbook_Open()
Sheets("Accueil").Select
End Sub

Fred.M.


Bonjour à tous,

J'ai un classeur, contenant du code et plusieurs feuilles.

Afin de faciliter le travail de mon Boss, je voudrais qu'à l'ouverture
du classeur, la feuille nommée "Accueil" s'affiche automatiquement.

J'ai trouvé sur un site ( ;=))) ) l'astuce suivante :

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Sheets("Accueil").Range("A1").Select
End Sub


( module ThisWorkBook )


Mais à la fermeture du classeur j'ai une erreur 1004 !!!


Merci à l'avance pour vos pertinentes réflexions !


JF



Avatar
rthompson
Dans le "This workbook"

Moi j'ai ceci

il m'affiche ma feuille "Menu"
Et cache toutes les autres
Et en dessous il y a un d'autres bouts de code utiles

A bientôt

Rex ;-)) )))


xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Private Sub Workbook_Open()
Application.ScreenUpdating = False
Sheets("Listings").Protect , userinterfaceonly:=True
Sheets("Promethean_Invoices").Visible = False
Sheets("Price Input").Visible = False
Sheets("Product_List").Visible = False
Sheets("Listings").Visible = False
Sheets("Tracking_Orders").Visible = False
Sheets("Offers").Visible = False
Sheets("Customers").Visible = False
Sheets("Make Offer").Visible = False
Sheets("Res-Pricelist").Visible = False
Sheets("EU-Pricelist").Visible = False
Sheets("New contact").Visible = False
Application.ScreenUpdating = False
Sheets("Menu").Select
Sheets("Menu").Select
Application.Caption = ThisWorkbook.path
Application.StatusBar = ThisWorkbook.FullName

End Sub
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Et dans mon menu pour chaque bouton j'ai ce code-ci
Ceci affiche la feuille concerné
xxxxxxxxxxxxxxxxxxxxxxxxxx
Sub Consult_Charts()
Sheets("Data_for_charts").Visible = True
Sheets("Data_for_charts").Select
End Sub
xxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Et sur chaque feuille j'ai un bouton menu
qui renvoi vers la feuille menu
et qui cache la feuille active

Ce qui fait qu'il n'y a jamais trop de feuille affichées en même temps

Et puis deux boutons pour tout afficher ou tout cacher

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Sub Show_AllSheets()
Application.ScreenUpdating = False
Sheets("Promethean_Invoices").Visible = True
Sheets("Price Input").Visible = True
Sheets("Product_List").Visible = True
Sheets("Listings").Visible = True
Sheets("Tracking_Orders").Visible = True
Sheets("Offers").Visible = True
Sheets("Customers").Visible = True
Sheets("Make Offer").Visible = True
Sheets("Res-Pricelist").Visible = True
Sheets("EU-Pricelist").Visible = True
Sheets("New contact").Visible = True
Sheets("Printing_Offers").Visible = True
Application.ScreenUpdating = True
Sheets("Menu").Select
End Sub

Sub Hide_AllSheets()
Application.ScreenUpdating = False
Sheets("Promethean_Invoices").Visible = False
Sheets("Price Input").Visible = False
Sheets("Product_List").Visible = False
Sheets("Listings").Visible = False
Sheets("Tracking_Orders").Visible = False
Sheets("Offers").Visible = False
Sheets("Customers").Visible = False
Sheets("Make Offer").Visible = False
Sheets("Res-Pricelist").Visible = False
Sheets("EU-Pricelist").Visible = False
Sheets("New contact").Visible = False
Sheets("Printing_Offers").Visible = False
Application.ScreenUpdating = False
Sheets("Menu").Select
End Sub

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Sub Menu()
ActiveSheet.Visible = False
Sheets("Menu").Select
Range("A1").Select
End Sub




"JFL" a écrit dans le message de news:

Bonjour à tous,

J'ai un classeur, contenant du code et plusieurs feuilles.

Afin de faciliter le travail de mon Boss, je voudrais qu'à l'ouverture du
classeur, la feuille nommée "Accueil" s'affiche automatiquement.

J'ai trouvé sur un site ( ;=))) ) l'astuce suivante :

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Sheets("Accueil").Range("A1").Select
End Sub


( module ThisWorkBook )


Mais à la fermeture du classeur j'ai une erreur 1004 !!!


Merci à l'avance pour vos pertinentes réflexions !


JF


Avatar
JFL
Bonjour JFL,
Essaie tout simplement sur l'évènement Open de ton même Workbooks :-)

Private Sub Workbook_Open()
Sheets("Accueil").Select
End Sub

Fred.M.



Grand merci Fred.

Cela fonctionne très bien.

JF

Avatar
lSteph
Bonjour,
dans l'esprit de ce que tu faisais Save plutôt que Close
et activer la feuille avant selection de cellule:

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, _
Cancel As Boolean)
Worksheets("Accueil").Activate
[a1].Select
End Sub

Ce sera enregistré si on ferme car sinon on peut fermer sans
enregistrer ,
et tu me diras on peut aussi ne pas activer les macros à l'ouverture

'lSteph

On 4 sep, 15:38, JFL wrote:
Bonjour à tous,

J'ai un classeur, contenant du code et plusieurs feuilles.

Afin de faciliter le travail de mon Boss, je voudrais qu'à l'ouverture
du classeur, la feuille nommée "Accueil" s'affiche automatiquement.

J'ai trouvé sur un site ( ;=))) ) l'astuce suivante :

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Sheets("Accueil").Range("A1").Select
End Sub

( module ThisWorkBook )

Mais à la fermeture du classeur j'ai une erreur 1004 !!!

Merci à l'avance pour vos pertinentes réflexions !

JF


Avatar
JFL
Très complet !

Merci !


Dans le "This workbook"

Moi j'ai ceci

il m'affiche ma feuille "Menu"
Et cache toutes les autres
Et en dessous il y a un d'autres bouts de code utiles

A bientôt

Rex ;-)) )))


xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Private Sub Workbook_Open()
Application.ScreenUpdating = False
Sheets("Listings").Protect , userinterfaceonly:=True
Sheets("Promethean_Invoices").Visible = False
Sheets("Price Input").Visible = False
Sheets("Product_List").Visible = False
Sheets("Listings").Visible = False
Sheets("Tracking_Orders").Visible = False
Sheets("Offers").Visible = False
Sheets("Customers").Visible = False
Sheets("Make Offer").Visible = False
Sheets("Res-Pricelist").Visible = False
Sheets("EU-Pricelist").Visible = False
Sheets("New contact").Visible = False
Application.ScreenUpdating = False
Sheets("Menu").Select
Sheets("Menu").Select
Application.Caption = ThisWorkbook.path
Application.StatusBar = ThisWorkbook.FullName

End Sub
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Et dans mon menu pour chaque bouton j'ai ce code-ci
Ceci affiche la feuille concerné
xxxxxxxxxxxxxxxxxxxxxxxxxx
Sub Consult_Charts()
Sheets("Data_for_charts").Visible = True
Sheets("Data_for_charts").Select
End Sub
xxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Et sur chaque feuille j'ai un bouton menu
qui renvoi vers la feuille menu
et qui cache la feuille active

Ce qui fait qu'il n'y a jamais trop de feuille affichées en même temps

Et puis deux boutons pour tout afficher ou tout cacher

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Sub Show_AllSheets()
Application.ScreenUpdating = False
Sheets("Promethean_Invoices").Visible = True
Sheets("Price Input").Visible = True
Sheets("Product_List").Visible = True
Sheets("Listings").Visible = True
Sheets("Tracking_Orders").Visible = True
Sheets("Offers").Visible = True
Sheets("Customers").Visible = True
Sheets("Make Offer").Visible = True
Sheets("Res-Pricelist").Visible = True
Sheets("EU-Pricelist").Visible = True
Sheets("New contact").Visible = True
Sheets("Printing_Offers").Visible = True
Application.ScreenUpdating = True
Sheets("Menu").Select
End Sub

Sub Hide_AllSheets()
Application.ScreenUpdating = False
Sheets("Promethean_Invoices").Visible = False
Sheets("Price Input").Visible = False
Sheets("Product_List").Visible = False
Sheets("Listings").Visible = False
Sheets("Tracking_Orders").Visible = False
Sheets("Offers").Visible = False
Sheets("Customers").Visible = False
Sheets("Make Offer").Visible = False
Sheets("Res-Pricelist").Visible = False
Sheets("EU-Pricelist").Visible = False
Sheets("New contact").Visible = False
Sheets("Printing_Offers").Visible = False
Application.ScreenUpdating = False
Sheets("Menu").Select
End Sub

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Sub Menu()
ActiveSheet.Visible = False
Sheets("Menu").Select
Range("A1").Select
End Sub


Avatar
rthompson
Hit iz ze doone wiz pleezzure


Ou en Belge

Quand je peux, je peux
Et quand je peux pas, et ben, alors, je peux pas


Rex ;-)) ))




"JFL" a écrit dans le message de news:
%
Très complet !

Merci !


Dans le "This workbook"

Moi j'ai ceci

il m'affiche ma feuille "Menu"
Et cache toutes les autres
Et en dessous il y a un d'autres bouts de code utiles

A bientôt

Rex ;-)) )))


xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Private Sub Workbook_Open()
Application.ScreenUpdating = False
Sheets("Listings").Protect , userinterfaceonly:=True
Sheets("Promethean_Invoices").Visible = False
Sheets("Price Input").Visible = False
Sheets("Product_List").Visible = False
Sheets("Listings").Visible = False
Sheets("Tracking_Orders").Visible = False
Sheets("Offers").Visible = False
Sheets("Customers").Visible = False
Sheets("Make Offer").Visible = False
Sheets("Res-Pricelist").Visible = False
Sheets("EU-Pricelist").Visible = False
Sheets("New contact").Visible = False
Application.ScreenUpdating = False
Sheets("Menu").Select
Sheets("Menu").Select
Application.Caption = ThisWorkbook.path
Application.StatusBar = ThisWorkbook.FullName

End Sub
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Et dans mon menu pour chaque bouton j'ai ce code-ci
Ceci affiche la feuille concerné
xxxxxxxxxxxxxxxxxxxxxxxxxx
Sub Consult_Charts()
Sheets("Data_for_charts").Visible = True
Sheets("Data_for_charts").Select
End Sub
xxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Et sur chaque feuille j'ai un bouton menu
qui renvoi vers la feuille menu
et qui cache la feuille active

Ce qui fait qu'il n'y a jamais trop de feuille affichées en même temps

Et puis deux boutons pour tout afficher ou tout cacher

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Sub Show_AllSheets()
Application.ScreenUpdating = False
Sheets("Promethean_Invoices").Visible = True
Sheets("Price Input").Visible = True
Sheets("Product_List").Visible = True
Sheets("Listings").Visible = True
Sheets("Tracking_Orders").Visible = True
Sheets("Offers").Visible = True
Sheets("Customers").Visible = True
Sheets("Make Offer").Visible = True
Sheets("Res-Pricelist").Visible = True
Sheets("EU-Pricelist").Visible = True
Sheets("New contact").Visible = True
Sheets("Printing_Offers").Visible = True
Application.ScreenUpdating = True
Sheets("Menu").Select
End Sub

Sub Hide_AllSheets()
Application.ScreenUpdating = False
Sheets("Promethean_Invoices").Visible = False
Sheets("Price Input").Visible = False
Sheets("Product_List").Visible = False
Sheets("Listings").Visible = False
Sheets("Tracking_Orders").Visible = False
Sheets("Offers").Visible = False
Sheets("Customers").Visible = False
Sheets("Make Offer").Visible = False
Sheets("Res-Pricelist").Visible = False
Sheets("EU-Pricelist").Visible = False
Sheets("New contact").Visible = False
Sheets("Printing_Offers").Visible = False
Application.ScreenUpdating = False
Sheets("Menu").Select
End Sub

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Sub Menu()
ActiveSheet.Visible = False
Sheets("Menu").Select
Range("A1").Select
End Sub




Avatar
lSteph
Bonjour MajØR,
;-)

''''''''''''''''''''''''''''''''''''''''''''''''''''''dans
thisworkbook
Private Sub Workbook_Open()
Dim Sh As Worksheet
Application.ScreenUpdating = False
Worksheets("Listings").Protect , userinterfaceonly:=True
For Each Sh In ThisWorkbook.Sheets
If Sh.Name <> "Menu" Then Sh.Visible = False
Next
Worksheets("Menu").Activate
Application.Caption = ThisWorkbook.Path
Application.StatusBar = ThisWorkbook.FullName
End Sub

'''''''''''''''''''''''''''''''''''''''''''''''''''et puis dans un
Module Standard
Sub AllShowOrNot()
Dim Sh As Worksheet
Application.ScreenUpdating = False
For Each Sh In ThisWorkbook.Sheets
With Sh
If .Name <> "Menu" Then .Visible = Not .Visible
End With
Next
End Sub

'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

'lSteph
On 4 sep, 15:51, "rthompson" wrote:
Dans le "This workbook"

Moi j'ai ceci

il m'affiche ma feuille "Menu"
Et cache toutes les autres
Et en dessous il y a un d'autres bouts de code utiles

A bientôt

Rex ;-)) )))

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Private Sub Workbook_Open()
Application.ScreenUpdating = False
Sheets("Listings").Protect , userinterfaceonly:=True
Sheets("Promethean_Invoices").Visible = False
Sheets("Price Input").Visible = False
Sheets("Product_List").Visible = False
Sheets("Listings").Visible = False
Sheets("Tracking_Orders").Visible = False
Sheets("Offers").Visible = False
Sheets("Customers").Visible = False
Sheets("Make Offer").Visible = False
Sheets("Res-Pricelist").Visible = False
Sheets("EU-Pricelist").Visible = False
Sheets("New contact").Visible = False
Application.ScreenUpdating = False
Sheets("Menu").Select
Sheets("Menu").Select
Application.Caption = ThisWorkbook.path
Application.StatusBar = ThisWorkbook.FullName

End Sub
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Et dans mon menu pour chaque bouton j'ai ce code-ci
Ceci affiche la feuille concerné
xxxxxxxxxxxxxxxxxxxxxxxxxx
Sub Consult_Charts()
Sheets("Data_for_charts").Visible = True
Sheets("Data_for_charts").Select
End Sub
xxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Et sur chaque feuille j'ai un bouton menu
qui renvoi vers la feuille menu
et qui cache la feuille active

Ce qui fait qu'il n'y a jamais trop de feuille affichées en même temps

Et puis deux boutons pour tout afficher ou tout cacher

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Sub Show_AllSheets()
Application.ScreenUpdating = False
Sheets("Promethean_Invoices").Visible = True
Sheets("Price Input").Visible = True
Sheets("Product_List").Visible = True
Sheets("Listings").Visible = True
Sheets("Tracking_Orders").Visible = True
Sheets("Offers").Visible = True
Sheets("Customers").Visible = True
Sheets("Make Offer").Visible = True
Sheets("Res-Pricelist").Visible = True
Sheets("EU-Pricelist").Visible = True
Sheets("New contact").Visible = True
Sheets("Printing_Offers").Visible = True
Application.ScreenUpdating = True
Sheets("Menu").Select
End Sub

Sub Hide_AllSheets()
Application.ScreenUpdating = False
Sheets("Promethean_Invoices").Visible = False
Sheets("Price Input").Visible = False
Sheets("Product_List").Visible = False
Sheets("Listings").Visible = False
Sheets("Tracking_Orders").Visible = False
Sheets("Offers").Visible = False
Sheets("Customers").Visible = False
Sheets("Make Offer").Visible = False
Sheets("Res-Pricelist").Visible = False
Sheets("EU-Pricelist").Visible = False
Sheets("New contact").Visible = False
Sheets("Printing_Offers").Visible = False
Application.ScreenUpdating = False
Sheets("Menu").Select
End Sub

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Sub Menu()
ActiveSheet.Visible = False
Sheets("Menu").Select
Range("A1").Select
End Sub

"JFL" a écrit dans le message de news:


Bonjour à tous,

J'ai un classeur, contenant du code et plusieurs feuilles.

Afin de faciliter le travail de mon Boss, je voudrais qu'à l'ouvertur e du
classeur, la feuille nommée "Accueil" s'affiche automatiquement.

J'ai trouvé sur un site ( ;=))) ) l'astuce suivante :

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Sheets("Accueil").Range("A1").Select
End Sub

( module ThisWorkBook )

Mais à la fermeture du classeur j'ai une erreur 1004 !!!

Merci à l'avance pour vos pertinentes réflexions !

JF




Avatar
rthompson
Bonjour LSteph

ET MERCI

La première partie fonctionne
Tout est caché sauf le menu

Mais l'autre partie NON

J'essssplik

Sur ma feuille menu j'ai des boutons auxquels il y a des macros assignées

J'ai donc mis des ' devant toutes ces macros
et mis ton code sur un module (le 5 pour ne pas le nommé)

Mais comment faire pour que les boutons réagissent?

Et c'est gentil à toi de me corriger (si si si j'apprécie)
Et un code plus court est toujours meiux et plus rapide

Mais mon gros (façon de parler) problème actuel est l'impression vers PDF


Mais merci et à très bientôt

Rex ;-)) )))





"lSteph" a écrit dans le message de news:

Bonjour MajØR,
;-)

''''''''''''''''''''''''''''''''''''''''''''''''''''''dans
thisworkbook
Private Sub Workbook_Open()
Dim Sh As Worksheet
Application.ScreenUpdating = False
Worksheets("Listings").Protect , userinterfaceonly:=True
For Each Sh In ThisWorkbook.Sheets
If Sh.Name <> "Menu" Then Sh.Visible = False
Next
Worksheets("Menu").Activate
Application.Caption = ThisWorkbook.Path
Application.StatusBar = ThisWorkbook.FullName
End Sub

'''''''''''''''''''''''''''''''''''''''''''''''''''et puis dans un
Module Standard
Sub AllShowOrNot()
Dim Sh As Worksheet
Application.ScreenUpdating = False
For Each Sh In ThisWorkbook.Sheets
With Sh
If .Name <> "Menu" Then .Visible = Not .Visible
End With
Next
End Sub

'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

'lSteph
On 4 sep, 15:51, "rthompson" wrote:
Dans le "This workbook"

Moi j'ai ceci

il m'affiche ma feuille "Menu"
Et cache toutes les autres
Et en dessous il y a un d'autres bouts de code utiles

A bientôt

Rex ;-)) )))

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Private Sub Workbook_Open()
Application.ScreenUpdating = False
Sheets("Listings").Protect , userinterfaceonly:=True
Sheets("Promethean_Invoices").Visible = False
Sheets("Price Input").Visible = False
Sheets("Product_List").Visible = False
Sheets("Listings").Visible = False
Sheets("Tracking_Orders").Visible = False
Sheets("Offers").Visible = False
Sheets("Customers").Visible = False
Sheets("Make Offer").Visible = False
Sheets("Res-Pricelist").Visible = False
Sheets("EU-Pricelist").Visible = False
Sheets("New contact").Visible = False
Application.ScreenUpdating = False
Sheets("Menu").Select
Sheets("Menu").Select
Application.Caption = ThisWorkbook.path
Application.StatusBar = ThisWorkbook.FullName

End Sub
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Et dans mon menu pour chaque bouton j'ai ce code-ci
Ceci affiche la feuille concerné
xxxxxxxxxxxxxxxxxxxxxxxxxx
Sub Consult_Charts()
Sheets("Data_for_charts").Visible = True
Sheets("Data_for_charts").Select
End Sub
xxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Et sur chaque feuille j'ai un bouton menu
qui renvoi vers la feuille menu
et qui cache la feuille active

Ce qui fait qu'il n'y a jamais trop de feuille affichées en même temps

Et puis deux boutons pour tout afficher ou tout cacher

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Sub Show_AllSheets()
Application.ScreenUpdating = False
Sheets("Promethean_Invoices").Visible = True
Sheets("Price Input").Visible = True
Sheets("Product_List").Visible = True
Sheets("Listings").Visible = True
Sheets("Tracking_Orders").Visible = True
Sheets("Offers").Visible = True
Sheets("Customers").Visible = True
Sheets("Make Offer").Visible = True
Sheets("Res-Pricelist").Visible = True
Sheets("EU-Pricelist").Visible = True
Sheets("New contact").Visible = True
Sheets("Printing_Offers").Visible = True
Application.ScreenUpdating = True
Sheets("Menu").Select
End Sub

Sub Hide_AllSheets()
Application.ScreenUpdating = False
Sheets("Promethean_Invoices").Visible = False
Sheets("Price Input").Visible = False
Sheets("Product_List").Visible = False
Sheets("Listings").Visible = False
Sheets("Tracking_Orders").Visible = False
Sheets("Offers").Visible = False
Sheets("Customers").Visible = False
Sheets("Make Offer").Visible = False
Sheets("Res-Pricelist").Visible = False
Sheets("EU-Pricelist").Visible = False
Sheets("New contact").Visible = False
Sheets("Printing_Offers").Visible = False
Application.ScreenUpdating = False
Sheets("Menu").Select
End Sub

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Sub Menu()
ActiveSheet.Visible = False
Sheets("Menu").Select
Range("A1").Select
End Sub

"JFL" a écrit dans le message de news:


Bonjour à tous,

J'ai un classeur, contenant du code et plusieurs feuilles.

Afin de faciliter le travail de mon Boss, je voudrais qu'à l'ouverture
du
classeur, la feuille nommée "Accueil" s'affiche automatiquement.

J'ai trouvé sur un site ( ;=))) ) l'astuce suivante :

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Sheets("Accueil").Range("A1").Select
End Sub

( module ThisWorkBook )

Mais à la fermeture du classeur j'ai une erreur 1004 !!!

Merci à l'avance pour vos pertinentes réflexions !

JF




Avatar
lSteph
Call AllShowOrNot

;-) dans le code du bouton...


On 4 sep, 17:27, "rthompson" wrote:
Bonjour LSteph

ET MERCI

La première partie fonctionne
Tout est caché sauf le menu

Mais l'autre partie NON

J'essssplik

Sur ma feuille menu j'ai des boutons auxquels il y a des macros assigné es

J'ai donc mis des ' devant toutes ces macros
et mis ton code sur un module (le 5 pour ne pas le nommé)

Mais comment faire pour que les boutons réagissent?

Et c'est gentil à toi de me corriger (si si si j'apprécie)
Et un code plus court est toujours meiux et plus rapide

Mais mon gros (façon de parler) problème actuel est l'impression vers PDF

Mais merci et à très bientôt

Rex ;-)) )))

"lSteph" a écrit dans le message de news:

Bonjour MajØR,
;-)

''''''''''''''''''''''''''''''''''''''''''''''''''''''dans
thisworkbook
Private Sub Workbook_Open()
Dim Sh As Worksheet
Application.ScreenUpdating = False
Worksheets("Listings").Protect , userinterfaceonly:=True
For Each Sh In ThisWorkbook.Sheets
If Sh.Name <> "Menu" Then Sh.Visible = False
Next
Worksheets("Menu").Activate
Application.Caption = ThisWorkbook.Path
Application.StatusBar = ThisWorkbook.FullName
End Sub

'''''''''''''''''''''''''''''''''''''''''''''''''''et puis dans un
Module Standard
Sub AllShowOrNot()
Dim Sh As Worksheet
Application.ScreenUpdating = False
For Each Sh In ThisWorkbook.Sheets
With Sh
If .Name <> "Menu" Then .Visible = Not .Visible
End With
Next
End Sub

'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

'lSteph
On 4 sep, 15:51, "rthompson" wrote:

Dans le "This workbook"

Moi j'ai ceci

il m'affiche ma feuille "Menu"
Et cache toutes les autres
Et en dessous il y a un d'autres bouts de code utiles

A bientôt

Rex ;-)) )))

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Private Sub Workbook_Open()
Application.ScreenUpdating = False
Sheets("Listings").Protect , userinterfaceonly:=True
Sheets("Promethean_Invoices").Visible = False
Sheets("Price Input").Visible = False
Sheets("Product_List").Visible = False
Sheets("Listings").Visible = False
Sheets("Tracking_Orders").Visible = False
Sheets("Offers").Visible = False
Sheets("Customers").Visible = False
Sheets("Make Offer").Visible = False
Sheets("Res-Pricelist").Visible = False
Sheets("EU-Pricelist").Visible = False
Sheets("New contact").Visible = False
Application.ScreenUpdating = False
Sheets("Menu").Select
Sheets("Menu").Select
Application.Caption = ThisWorkbook.path
Application.StatusBar = ThisWorkbook.FullName

End Sub
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Et dans mon menu pour chaque bouton j'ai ce code-ci
Ceci affiche la feuille concerné
xxxxxxxxxxxxxxxxxxxxxxxxxx
Sub Consult_Charts()
Sheets("Data_for_charts").Visible = True
Sheets("Data_for_charts").Select
End Sub
xxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Et sur chaque feuille j'ai un bouton menu
qui renvoi vers la feuille menu
et qui cache la feuille active

Ce qui fait qu'il n'y a jamais trop de feuille affichées en même te mps

Et puis deux boutons pour tout afficher ou tout cacher

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Sub Show_AllSheets()
Application.ScreenUpdating = False
Sheets("Promethean_Invoices").Visible = True
Sheets("Price Input").Visible = True
Sheets("Product_List").Visible = True
Sheets("Listings").Visible = True
Sheets("Tracking_Orders").Visible = True
Sheets("Offers").Visible = True
Sheets("Customers").Visible = True
Sheets("Make Offer").Visible = True
Sheets("Res-Pricelist").Visible = True
Sheets("EU-Pricelist").Visible = True
Sheets("New contact").Visible = True
Sheets("Printing_Offers").Visible = True
Application.ScreenUpdating = True
Sheets("Menu").Select
End Sub

Sub Hide_AllSheets()
Application.ScreenUpdating = False
Sheets("Promethean_Invoices").Visible = False
Sheets("Price Input").Visible = False
Sheets("Product_List").Visible = False
Sheets("Listings").Visible = False
Sheets("Tracking_Orders").Visible = False
Sheets("Offers").Visible = False
Sheets("Customers").Visible = False
Sheets("Make Offer").Visible = False
Sheets("Res-Pricelist").Visible = False
Sheets("EU-Pricelist").Visible = False
Sheets("New contact").Visible = False
Sheets("Printing_Offers").Visible = False
Application.ScreenUpdating = False
Sheets("Menu").Select
End Sub

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Sub Menu()
ActiveSheet.Visible = False
Sheets("Menu").Select
Range("A1").Select
End Sub

"JFL" a écrit dans le message de news:


Bonjour à tous,

J'ai un classeur, contenant du code et plusieurs feuilles.

Afin de faciliter le travail de mon Boss, je voudrais qu'à l'ouvert ure
du
classeur, la feuille nommée "Accueil" s'affiche automatiquement.

J'ai trouvé sur un site ( ;=))) ) l'astuce suivante :

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Sheets("Accueil").Range("A1").Select
End Sub

( module ThisWorkBook )

Mais à la fermeture du classeur j'ai une erreur 1004 !!!

Merci à l'avance pour vos pertinentes réflexions !

JF






Avatar
rthompson
Bonjour MERCI

Et ça marche

Maintenant, j'insiste hein?

T'as une idée pour mon impression en PDF????

A bientôt

Je te répondrai tard

Je dois filer maintenant "Grosse réunion"

C'est à dire une réunion plein de gens importants
Et pas une réunion avec une seule personne quoique grosse


Rex ;-))) )))




"lSteph" a écrit dans le message de news:

Call AllShowOrNot

;-) dans le code du bouton...


On 4 sep, 17:27, "rthompson" wrote:
Bonjour LSteph

ET MERCI

La première partie fonctionne
Tout est caché sauf le menu

Mais l'autre partie NON

J'essssplik

Sur ma feuille menu j'ai des boutons auxquels il y a des macros assignées

J'ai donc mis des ' devant toutes ces macros
et mis ton code sur un module (le 5 pour ne pas le nommé)

Mais comment faire pour que les boutons réagissent?

Et c'est gentil à toi de me corriger (si si si j'apprécie)
Et un code plus court est toujours meiux et plus rapide

Mais mon gros (façon de parler) problème actuel est l'impression vers PDF

Mais merci et à très bientôt

Rex ;-)) )))

"lSteph" a écrit dans le message de news:

Bonjour MajØR,
;-)

''''''''''''''''''''''''''''''''''''''''''''''''''''''dans
thisworkbook
Private Sub Workbook_Open()
Dim Sh As Worksheet
Application.ScreenUpdating = False
Worksheets("Listings").Protect , userinterfaceonly:=True
For Each Sh In ThisWorkbook.Sheets
If Sh.Name <> "Menu" Then Sh.Visible = False
Next
Worksheets("Menu").Activate
Application.Caption = ThisWorkbook.Path
Application.StatusBar = ThisWorkbook.FullName
End Sub

'''''''''''''''''''''''''''''''''''''''''''''''''''et puis dans un
Module Standard
Sub AllShowOrNot()
Dim Sh As Worksheet
Application.ScreenUpdating = False
For Each Sh In ThisWorkbook.Sheets
With Sh
If .Name <> "Menu" Then .Visible = Not .Visible
End With
Next
End Sub

'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

'lSteph
On 4 sep, 15:51, "rthompson" wrote:

Dans le "This workbook"

Moi j'ai ceci

il m'affiche ma feuille "Menu"
Et cache toutes les autres
Et en dessous il y a un d'autres bouts de code utiles

A bientôt

Rex ;-)) )))

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Private Sub Workbook_Open()
Application.ScreenUpdating = False
Sheets("Listings").Protect , userinterfaceonly:=True
Sheets("Promethean_Invoices").Visible = False
Sheets("Price Input").Visible = False
Sheets("Product_List").Visible = False
Sheets("Listings").Visible = False
Sheets("Tracking_Orders").Visible = False
Sheets("Offers").Visible = False
Sheets("Customers").Visible = False
Sheets("Make Offer").Visible = False
Sheets("Res-Pricelist").Visible = False
Sheets("EU-Pricelist").Visible = False
Sheets("New contact").Visible = False
Application.ScreenUpdating = False
Sheets("Menu").Select
Sheets("Menu").Select
Application.Caption = ThisWorkbook.path
Application.StatusBar = ThisWorkbook.FullName

End Sub
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Et dans mon menu pour chaque bouton j'ai ce code-ci
Ceci affiche la feuille concerné
xxxxxxxxxxxxxxxxxxxxxxxxxx
Sub Consult_Charts()
Sheets("Data_for_charts").Visible = True
Sheets("Data_for_charts").Select
End Sub
xxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Et sur chaque feuille j'ai un bouton menu
qui renvoi vers la feuille menu
et qui cache la feuille active

Ce qui fait qu'il n'y a jamais trop de feuille affichées en même temps

Et puis deux boutons pour tout afficher ou tout cacher

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Sub Show_AllSheets()
Application.ScreenUpdating = False
Sheets("Promethean_Invoices").Visible = True
Sheets("Price Input").Visible = True
Sheets("Product_List").Visible = True
Sheets("Listings").Visible = True
Sheets("Tracking_Orders").Visible = True
Sheets("Offers").Visible = True
Sheets("Customers").Visible = True
Sheets("Make Offer").Visible = True
Sheets("Res-Pricelist").Visible = True
Sheets("EU-Pricelist").Visible = True
Sheets("New contact").Visible = True
Sheets("Printing_Offers").Visible = True
Application.ScreenUpdating = True
Sheets("Menu").Select
End Sub

Sub Hide_AllSheets()
Application.ScreenUpdating = False
Sheets("Promethean_Invoices").Visible = False
Sheets("Price Input").Visible = False
Sheets("Product_List").Visible = False
Sheets("Listings").Visible = False
Sheets("Tracking_Orders").Visible = False
Sheets("Offers").Visible = False
Sheets("Customers").Visible = False
Sheets("Make Offer").Visible = False
Sheets("Res-Pricelist").Visible = False
Sheets("EU-Pricelist").Visible = False
Sheets("New contact").Visible = False
Sheets("Printing_Offers").Visible = False
Application.ScreenUpdating = False
Sheets("Menu").Select
End Sub

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Sub Menu()
ActiveSheet.Visible = False
Sheets("Menu").Select
Range("A1").Select
End Sub

"JFL" a écrit dans le message de news:


Bonjour à tous,

J'ai un classeur, contenant du code et plusieurs feuilles.

Afin de faciliter le travail de mon Boss, je voudrais qu'à l'ouverture
du
classeur, la feuille nommée "Accueil" s'affiche automatiquement.

J'ai trouvé sur un site ( ;=))) ) l'astuce suivante :

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Sheets("Accueil").Range("A1").Select
End Sub

( module ThisWorkBook )

Mais à la fermeture du classeur j'ai une erreur 1004 !!!

Merci à l'avance pour vos pertinentes réflexions !

JF