A la différence de "Application.DisplayFullScreen = True", le code ci-après permet à l'ouverture d'un classeur
- de ne masquer que les barres d'outils désirées (en ajoutant un simple test sur le nom)
permet également de masquer
- le quadrillage
- les entêtes de colonnes et N° de lignes
- les onglets
- les barres de défilement H et V
- la barre de formule
et de rétablir la situation à la fermeture du classeur.
Dans ThisWorkbook
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Private Sub Workbook_Open() Masquer End SubLe principe :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Private Sub Workbook_BeforeClose(Cancel As Boolean) Retablir End Sub
Pour masquer : A l'ouverture du classeur, relève dans une nouvelle feuille de calculs l'état des divers éléments affichés à l'écran - Barres d'outils, d'état, de formules, de défilement, les onglets, le quadrillage, etc. - et masque les éléments visibles.
Pour Retablir : Rétablit l'affichage des divers éléments selon leur état relevé dans la feuille de calculs créée à l'ouverture du classeur.
Dans un module standard
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49 Sub Masquer() 'Recense les barres d'outils affichée et les masque Dim FLx As Worksheet Application.ScreenUpdating = False Set FLx = Worksheets.Add FLx.Name = "XXX" 'Donne un nom utilisable dans Afficher() 'Concerne les barres d'outils - Ignore la barre de Menus(1) ("Worksheet Menu Bar") For i = 2 To Application.CommandBars.Count If Application.CommandBars(i).Visible Then 'si la barre d'outils est visible... '... on note son nom... j = j + 1 FLx.Cells(j, 1) = Application.CommandBars(i).Name '... et on la masque Application.CommandBars(i).Visible = False End If Next 'Concerne les options de l'onglet "Général" -> Menu "Outils" -> Commande "Options" With Application FLx.Cells(6, 2) = .ShowStartupDialog 'volet Office New Workbook .ShowStartupDialog = False FLx.Cells(7, 2) = .DisplayFormulaBar 'barre de formule .DisplayFormulaBar = False FLx.Cells(8, 2) = .DisplayStatusBar 'barre d'état .DisplayStatusBar = False End With 'ATTENTION - Concerne la feuille ACTIVE ********************** Worksheets("Feuil1").Activate With ActiveSheet FLx.Cells(9, 2) = .DisplayAutomaticPageBreaks 'Sauts de pages .DisplayAutomaticPageBreaks = False End With With ActiveWindow FLx.Cells(1, 2) = .DisplayGridlines 'Quadrillage .DisplayGridlines = False FLx.Cells(2, 2) = .DisplayHeadings 'Entêtes de colonnes et N° de lignes .DisplayHeadings = False FLx.Cells(3, 2) = .DisplayHorizontalScrollBar 'Barre de défilement H .DisplayHorizontalScrollBar = False FLx.Cells(4, 2) = .DisplayVerticalScrollBar 'Barre de défilement V .DisplayVerticalScrollBar = False FLx.Cells(5, 2) = .DisplayWorkbookTabs 'Onglets .DisplayWorkbookTabs = False End With '************************************************************ Application.ScreenUpdating = True End Sub
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34 Sub Retablir() 'Rétablit l'affichage trouvé à l'ouverture du classeur Dim FLx As Worksheet Application.ScreenUpdating = False Set FLx = Worksheets("XXX") 'Concerne les barres d'outils For i = 1 To FLx.Range("A65536").End(xlUp).Row CommandBars(FLx.Cells(i, 1).Value).Visible = True Next 'Concerne les options de l'onglet "Général" -> Menu "Outils" -> Commande "Options" With Application .ShowStartupDialog = FLx.Cells(6, 2) 'volet Office New Workbook .DisplayFormulaBar = FLx.Cells(7, 2) 'Barre de formules .DisplayStatusBar = FLx.Cells(8, 2) 'barre d'état End With 'ATTENTION - Concerne la feuille ACTIVE ********************** Worksheets("feuil1").Activate ActiveSheet.DisplayAutomaticPageBreaks = FLx.Cells(9, 2) 'Sauts de pages With ActiveWindow .DisplayGridlines = FLx.Cells(1, 2) 'quadrillage .DisplayHeadings = FLx.Cells(2, 2) 'entêtes de colonnes et N° de lignes .DisplayHorizontalScrollBar = FLx.Cells(3, 2) ' barres de défilement H .DisplayVerticalScrollBar = FLx.Cells(4, 2) 'Barre de défilement V .DisplayWorkbookTabs = FLx.Cells(5, 2) 'Onglets End With '************************************************************ Application.DisplayAlerts = False 'Evite le message de confirmation en cas de suppression de feuille FLx.Delete 'supprime la feuille Application.DisplayAlerts = True Application.ScreenUpdating = True End Sub
Partager