Une macro Excel pour cacher tous, mais la feuille de calcul active

Vous pouvez masquer les feuilles inactifs avec cette macro. Excel ne vous permet pas de cacher toutes les feuilles dans un workbook- au moins un doit être affiché. Cependant, vous pouvez masquer tous, mais la feuille active.

Sommaire

Comment les œuvres macro

La macro ici une boucle à travers les feuilles de calcul et correspond à chaque nom de feuille de calcul pour le nom de la feuille active. Chaque fois que les boucles macro, il cache toute feuille de calcul inégalée.

Sub Macro1 () 'Étape 1: Déclarez vos ws variablesDim Comme Worksheet'Step 2: Lancer une boucle à travers tous worksheetsFor Chaque WS En ThisWorkbook.Worksheets'Step 3: Vérifier chaque feuille de calcul nameif ws.Name lt;> ThisWorkbook.ActiveSheet.Name Then'Step 4: Masquer le sheetws.Visible = xlSheetHiddenEnd If'Step 5: boucle au prochain worksheetNext Sous wsEnd

Étape 1 déclare un objet appelé WS. Cette étape crée un conteneur de mémoire pour chaque feuille de calcul que la macro parcourt.




Étape 2 commence le bouclage, disant Excel pour évaluer toutes les feuilles dans ce classeur. Notez la différence entre ThisWorkbook et ActiveWorkbook. L'objet ThisWorkbook référence au classeur qui contient le code. L'objet ActiveWorkbook référence au classeur actif. Ils reviennent souvent le même objet, mais si le classeur exécution du code ne sont pas le classeur actif, ils retournent différents objets. Dans ce cas, vous ne voulez pas risquer de feuilles de cachettes dans d'autres classeurs, de sorte que vous utilisez ThisWorkbook.

Dans l'étape 3, la macro compare simplement le nom de la feuille active à la feuille en cours de boucle.

Si les noms de feuilles sont différentes, la macro masque la feuille à l'étape 4.

À l'étape 5, vous la boucle arrière pour obtenir la feuille suivante. Après toutes les feuilles sont évalués, la macro se termine.

Notez que vous utilisez xlsheetHidden dans votre macro. Cet établissement applique l'état de masquer par défaut que vous obtiendriez normalement lorsque vous droit; cliquez sur une feuille et sélectionnez Masquer. Dans cet état de masquer par défaut, un utilisateur peut droit; cliquez sur un onglet et choisissez Afficher, qui affiche toutes les feuilles masquées. Mais un autre état de peau est plus clandestine que celle par défaut. Si vous utilisez xlSheetVeryHidden de cacher vos feuilles, les utilisateurs ne seront pas en mesure de les voir du tout - même si elles droit; cliquez sur un onglet et choisissez Afficher. La seule façon d'afficher une feuille cachée de cette manière est d'utiliser VBA.

Comment utiliser la macro

Pour mettre en œuvre cette macro, vous pouvez copier et coller dans un module standard:

  1. Activer Visual Basic Editor en appuyant sur Alt + F11.

  2. droit; cliquez sur le nom du projet / classeur dans la fenêtre de projet.

  3. Choisissez Insertion-Module.

  4. Tapez ou collez le code dans le module nouvellement créé.


» » » » Une macro Excel pour cacher tous, mais la feuille de calcul active