És possible que vulgueu amagar els fulls de treball inactius amb aquesta macro. Excel no us permet amagar tots els fulls d'un llibre de treball; almenys un s'ha de mostrar. Tanmateix, podeu amagar-ho tot menys el full actiu.
Com funciona la macro
La macro aquí recorre els fulls de treball i fa coincidir cada nom de full de treball amb el nom del full actiu. Cada vegada que la macro fa un bucle, amaga qualsevol full de treball no coincident.
Sub macro1()
"Pas 1: declara les teves variables
Dim ws com a full de treball
"Pas 2: comenceu a repassar tots els fulls de treball
Per a cada ws En aquest llibre de treball.Fulls de treball
"Pas 3: comproveu el nom de cada full de treball
Si ws.Name <> ThisWorkbook.ActiveSheet.Name Aleshores
"Pas 4: amaga el full
ws.Visible = xlSheetHidden
Acaba si
"Pas 5: aneu al següent full de treball
Següent ws
End Sub
El pas 1 declara un objecte anomenat ws. Aquest pas crea un contenidor de memòria per a cada full de treball que la macro passa en bucle.
El pas 2 comença el bucle, dient a Excel que avaluï tots els fulls de treball d'aquest llibre. Tingueu en compte la diferència entre ThisWorkbook i ActiveWorkbook. L'objecte ThisWorkBook fa referència al llibre de treball que conté el codi. L'objecte ActiveWorkBook fa referència al llibre de treball actiu actualment. Sovint retornen el mateix objecte, però si el llibre de treball que executa el codi no és el llibre de treball actiu, tornen objectes diferents. En aquest cas, no voleu arriscar-vos a amagar fulls en altres llibres de treball, de manera que feu servir ThisWorkBook.
Al pas 3, la macro simplement compara el nom del full actiu amb el full que s'està reproduint en bucle.
Si els noms dels fulls són diferents, la macro amaga el full al pas 4.
Al pas 5, aneu enrere per obtenir el següent full. Després d'avaluar tots els fulls, la macro acaba.
Tingueu en compte que feu servir xlsheetHidden a la vostra macro. Aquesta propietat aplica l'estat d'ocultació predeterminat que normalment obtindríeu quan feu clic amb el botó dret a un full i seleccioneu Amaga. En aquest estat d'ocultació predeterminat, un usuari pot fer clic amb el botó dret a qualsevol pestanya i triar Mostra, que mostra tots els fulls ocults. Però un altre estat d'ocultació és més clandestí que el predeterminat. Si utilitzeu xlSheetVeryHidden per amagar els vostres fulls, els usuaris no els podran veure en absolut, fins i tot si fan clic amb el botó dret en una pestanya i trien Mostra. L'única manera de mostrar un full amagat d'aquesta manera és utilitzar VBA.
Com utilitzar la macro
Per implementar aquesta macro, podeu copiar-la i enganxar-la en un mòdul estàndard:
Activeu Visual Basic Editor prement Alt+F11.
Feu clic amb el botó dret al nom del projecte/llibre de treball a la finestra del projecte.
Seleccioneu Insereix → Mòdul.
Escriviu o enganxeu el codi al mòdul acabat de crear.