Comment faire pour qu'une feuille reste invisible
Si tu fais la combinaison de touches Alt + F11, tu entres dans l'éditeur VBA. Dans la fenêtre
projet, tu as le nom des feuilles. Lorsque tu cliques sur la feuille (dans l'éditeur), dans la
fenêtre de gauche, (propriétés) apparaissent les propriétés de la feuille. Sélectionne
"visible" et mets la propriété sur "xlSheetsHidden" Lorsque tu reviens sur
excel, tu constateras que ta feuille est masquée. Tu fais l'opération inverse pour la faire
apparaitre. La propriété sera sur "xlSheetvisible".
Par macro, tu ajoutes la ligne
Sheets("feuil1").visible=false pour masquer la feuil1
Sheets("feuil1").visible=Trie pour afficher la feuil1
Si tu ne veux pas qu'un tiers puisse la réafficher, il faut protéger le classeur.
Sitting hoax (de Marseille) Alias Laurent Daures
Autre solution
******** METHODE 1 ***************
Masquage sans protection particulière
***********************************
Masquage classique
Format / Feuille / Masquer
ou en VBA :
For Each Ws In ActiveWindow.SelectedSheets
With Ws
.Visible = xlSheetHidden
End With
Next Ws
Pour l'afficher à nouveau utilise le menu : Format/Feuille/afficher
************** METHODE 2 ***************
Masquage / Affichage par VBA exclusivement
*****************************************
Le masquage s'effectue par :
For Each Ws In ActiveWindow.SelectedSheets
With Ws
.Visible = xlSheetVeryHidden
End With
Next Ws
Dans le menu: Format/feuille/Afficher ta feuille apparaît pas.
Toi seul sait qu'elle existe
L'affichage est rétabli par :
For Each Ws In ActiveWorkbook.Sheets
Ws.Visible = xlSheetVisible
Next Ws
projet, tu as le nom des feuilles. Lorsque tu cliques sur la feuille (dans l'éditeur), dans la
fenêtre de gauche, (propriétés) apparaissent les propriétés de la feuille. Sélectionne
"visible" et mets la propriété sur "xlSheetsHidden" Lorsque tu reviens sur
excel, tu constateras que ta feuille est masquée. Tu fais l'opération inverse pour la faire
apparaitre. La propriété sera sur "xlSheetvisible".
Par macro, tu ajoutes la ligne
Sheets("feuil1").visible=false pour masquer la feuil1
Sheets("feuil1").visible=Trie pour afficher la feuil1
Si tu ne veux pas qu'un tiers puisse la réafficher, il faut protéger le classeur.
Sitting hoax (de Marseille) Alias Laurent Daures
Autre solution
******** METHODE 1 ***************
Masquage sans protection particulière
***********************************
Masquage classique
Format / Feuille / Masquer
ou en VBA :
For Each Ws In ActiveWindow.SelectedSheets
With Ws
.Visible = xlSheetHidden
End With
Next Ws
Pour l'afficher à nouveau utilise le menu : Format/Feuille/afficher
************** METHODE 2 ***************
Masquage / Affichage par VBA exclusivement
*****************************************
Le masquage s'effectue par :
For Each Ws In ActiveWindow.SelectedSheets
With Ws
.Visible = xlSheetVeryHidden
End With
Next Ws
Dans le menu: Format/feuille/Afficher ta feuille apparaît pas.
Toi seul sait qu'elle existe
L'affichage est rétabli par :
For Each Ws In ActiveWorkbook.Sheets
Ws.Visible = xlSheetVisible
Next Ws
Xavier Rouchon, (N°1237)
Comment masquer les noms des onglets ?
Tu peux les masquer par le menu Outils / Options /Affichage / Décocher Onglets de classeur
Par macro, tu ajoutes la ligne
ActiveWindow.DisplayWorkbookTabs = False
Par macro, tu ajoutes la ligne
ActiveWindow.DisplayWorkbookTabs = False
Laurent Daures, (N°1236)
Comment désactiver la possibilité de voir les macros du projet (Alt + F8). Je veux surtout
bloquer la boite de dialogue ouvrir les macro. Pour que l'utilisateur ne puis exécuter
manuellement les macro !
Le plus simple : protège ton projet en lecture. Dans l'éditeur VBA, menu Outils ->
Propriétés de VBAProject -> ongle "Protection", coche "Verrouiller le projet
pour affichage", entre un mot de passe, valide et enregistre le classeur. La protection
sera active à sa prochaine ouverture.
Pour que tes macros ne soient plus visibles dans la boîte de dialogue, une solution parmi
beaucoup d'autres. Mets la ligne :
Option Private Module
... au début de chacun des modules de ton classeur.
Propriétés de VBAProject -> ongle "Protection", coche "Verrouiller le projet
pour affichage", entre un mot de passe, valide et enregistre le classeur. La protection
sera active à sa prochaine ouverture.
Pour que tes macros ne soient plus visibles dans la boîte de dialogue, une solution parmi
beaucoup d'autres. Mets la ligne :
Option Private Module
... au début de chacun des modules de ton classeur.
Laurent Longre, (N°1235)

Quelle est la différence entre xlSheetHidden et xlSheetVeryHidden ?
La différence est simple :
La protection xlSheetHidden peut se retirer par les menus Excel alors que xlSheetVeryHidden
ne peut se retirer que par VBA et le fichier apparaît pas dans la liste Afficher.
La protection est un peu plus efficace
La protection xlSheetHidden peut se retirer par les menus Excel alors que xlSheetVeryHidden
ne peut se retirer que par VBA et le fichier apparaît pas dans la liste Afficher.
La protection est un peu plus efficace
Xavier Rouchon, (N°1234)
Y a t-il moyen d'enlever la barre de menu excel pour ne voir que les cellules ?
Plusieurs solutions :
Dans la feuille de code de ThisWorkbook :
Private Sub
Workbook_Open()
Application.CommandBars(1).Enabled = False
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.CommandBars(1).Enabled = True
End Sub
***************************
Deuxième solution :
'Affichage' - 'Plein écran' peut-il te convenir ???
Et si tu veux que le plein écran soit automatiquement activé à l'ouverture
de ton classeur, tu peux mettre ceci dans le module ThisWorkbook :
Private Sub
Workbook_BeforeClose(Cancel As Boolean)
Application.DisplayFullScreen =
False
End Sub
Private Sub Workbook_Open()
Application.DisplayFullScreen
= True
End Sub
Dans la feuille de code de ThisWorkbook :
Private Sub
Workbook_Open()
Application.CommandBars(1).Enabled = False
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.CommandBars(1).Enabled = True
End Sub
***************************
Deuxième solution :
'Affichage' - 'Plein écran' peut-il te convenir ???
Et si tu veux que le plein écran soit automatiquement activé à l'ouverture
de ton classeur, tu peux mettre ceci dans le module ThisWorkbook :
Private Sub
Workbook_BeforeClose(Cancel As Boolean)
Application.DisplayFullScreen =
False
End Sub
Private Sub Workbook_Open()
Application.DisplayFullScreen
= True
End Sub
ChrisV, Fabian Bertrand, (N°1233)
Comment rendre invisible la barre d'outils de windows (démarrer, +heure,...) ?
Tu peux utiliser le code ci-dessous, après l'avoir recopié dans un module standard.
Il cache (ou réaffiche) la barre des tâches mais ne permet pas d'en récupérer l'emplacement,
comme lorsqu'on coche "Masquer automatiquement" dans les Propriétés de la barre des
tâches.
'===================
Private Declare Function FindWindowA Lib "user32" _
(ByVal lpClassName As String, _
ByVal lpWindowName As String) As Long
Declare Function SetWindowPos Lib "user32" _
(ByVal hwnd As Long, ByVal hWndInsertAfter As Long, _
ByVal x As Long, ByVal y As Long, ByVal cx As Long, _
ByVal cy As Long, ByVal wFlags As Long) As Long
Public Const SWP_SHOWWINDOW = &H40
Public Const SWP_HIDEWINDOW = &H80
Function HideTaskbar()
Dim hdle As Long
hdle = FindWindowA("Shell_traywnd", "")
SetWindowPos hdle, 0, 0, 0, 0, 0, SWP_HIDEWINDOW
End Function
Function UnhideTaskbar()
Dim hdle As Long
hdle = FindWindowA("Shell_traywnd", "")
SetWindowPos hdle, 0, 0, 0, 0, 0, SWP_SHOWWINDOW
End Function
Une fois que tu as recopié le code dans un module standard, tu peux appeler les fonctions
HideTaskBar et UnhideTaskbar comme tu le ferais d'une procédure que tu aurais créée toi-même.
Si par exemple tu veux cacher la barre des tâches à l'ouverture d'un classeur, dans le module
ThisWorkbook du classeur :
Private Sub Workbook_Open()
HideTaskbar
End Sub
et en le refermant :
Private Sub Workbook_BeforeClose(Cancel As Boolean)
UnhideTaskbar
End Sub
Tu peux aussi les appeler dans le courant d'une macro :
Sub Macro1()
'instructions
HideTaskbar
'autres instructions
UnhideTaskbar
'autrecode si besoin
End Sub
Il cache (ou réaffiche) la barre des tâches mais ne permet pas d'en récupérer l'emplacement,
comme lorsqu'on coche "Masquer automatiquement" dans les Propriétés de la barre des
tâches.
'===================
Private Declare Function FindWindowA Lib "user32" _
(ByVal lpClassName As String, _
ByVal lpWindowName As String) As Long
Declare Function SetWindowPos Lib "user32" _
(ByVal hwnd As Long, ByVal hWndInsertAfter As Long, _
ByVal x As Long, ByVal y As Long, ByVal cx As Long, _
ByVal cy As Long, ByVal wFlags As Long) As Long
Public Const SWP_SHOWWINDOW = &H40
Public Const SWP_HIDEWINDOW = &H80
Function HideTaskbar()
Dim hdle As Long
hdle = FindWindowA("Shell_traywnd", "")
SetWindowPos hdle, 0, 0, 0, 0, 0, SWP_HIDEWINDOW
End Function
Function UnhideTaskbar()
Dim hdle As Long
hdle = FindWindowA("Shell_traywnd", "")
SetWindowPos hdle, 0, 0, 0, 0, 0, SWP_SHOWWINDOW
End Function
Une fois que tu as recopié le code dans un module standard, tu peux appeler les fonctions
HideTaskBar et UnhideTaskbar comme tu le ferais d'une procédure que tu aurais créée toi-même.
Si par exemple tu veux cacher la barre des tâches à l'ouverture d'un classeur, dans le module
ThisWorkbook du classeur :
Private Sub Workbook_Open()
HideTaskbar
End Sub
et en le refermant :
Private Sub Workbook_BeforeClose(Cancel As Boolean)
UnhideTaskbar
End Sub
Tu peux aussi les appeler dans le courant d'une macro :
Sub Macro1()
'instructions
HideTaskbar
'autres instructions
UnhideTaskbar
'autrecode si besoin
End Sub
Frédéric Sigonneau, (N°1232)
Comment supprimer l'affichage de toutes les barres de menus dans une macro (Auto_Open) ?
"Suppression" (je mets des guillemets !) :
Dim CmdB As CommandBar
For Each CmdB In Application.CommandBars
CmdB.Enabled = False
Next CmdB
Résurrection :
Dim CmdB As CommandBar
For Each CmdB In Application.CommandBars
CmdB.Enabled = True
Next CmdB
Dim CmdB As CommandBar
For Each CmdB In Application.CommandBars
CmdB.Enabled = False
Next CmdB
Résurrection :
Dim CmdB As CommandBar
For Each CmdB In Application.CommandBars
CmdB.Enabled = True
Next CmdB
Laurent Longre, (N°1231)