Les 3 options de la propriété Visible d'une feuille

La propriété "Visible" d'une feuille permet au choix :

  • d'afficher la feuille (par défaut)
  • de masquer simplement la feuille
  • de masquer efficacement la feuille (la feuille ne peut alors qu'être affichée à l'aide d'un code VBA ou manuellement depuis l'éditeur VBA)

Par défaut une feuille est affichée, sa propriété "Visible" a donc la valeur "-1 - xlSheetVisible" :

excel vba propriete visible xlsheetvisible

Masquer une feuille (0 - xlSheetHidden)

Pour masquer une feuille, faites un clic droit sur son onglet et choisissez "Masquer" :

excel masquer feuille visible

Cette façon simple de masquer une feuille correspond à la valeur "0 - xlSheetHidden" de la propriété "Visible" :

excel vba propriete visible xlsheethidden

Vous pouvez ensuite à tout moment réafficher la feuille en cliquant sur "Afficher..." en faisant un clic droit sur un onglet quelconque (ou à partir de l'éditeur VBA) :

excel afficher feuille visible

Masquer une feuille (2 - xlSheetVeryHidden)

Pour rendre la feuille impossible à afficher à partir des onglets, sélectionnez la valeur "2 - xlSheetVeryHidden" de la propriété "Visible" :

excel vba propriete visible xlsheetveryhidden

La feuille ne pourra alors être réaffichée qu'en modifiant sa propriété dans l'éditeur VBA ou à l'aide d'un code VBA.

Modifier la propriété à l'aide d'un code VBA

Par exemple, pour afficher la feuille 1 et masquer la feuille 2, vous pouvez utiliser le code suivant :

Sub exemple()
    Sheets("Feuil1").Visible = -1
    Sheets("Feuil2").Visible = 2
End Sub

Vous pouvez également entrer les constantes à la place des nombres, le résultat est identique :

Sub exemple()
    Sheets("Feuil1").Visible = xlSheetVisible
    Sheets("Feuil2").Visible = xlSheetVeryHidden
End Sub
Attention à ne pas masquer toutes les feuilles d'un classeur au risque d'obtenir une erreur VBA (dans le doute commencez par afficher les feuilles qui doivent l'être puis masquez les autres).