Un excel macro para ocultar todo menos la hoja de cálculo activa
Es posible que desee ocultar las hojas de trabajo inactivos con esta macro. Excel no le permite ocultar todas las hojas de un workbook- al menos uno tiene que ser mostrada. Sin embargo, puede ocultar todos menos la hoja activa.
Cómo funciona el macro
La macro aquí recorre las hojas de trabajo y coincide con el nombre de cada hoja de trabajo para el nombre de la hoja activa. Cada vez que los lazos macro, se esconde cualquier hoja de cálculo sin igual.
Sub Macro1 () 'Paso 1: Declare sus ws variablesDim Como Worksheet'Step 2: Inicio de bucle a través de todos worksheetsFor Cada ws En ThisWorkbook.Worksheets'Step 3: Compruebe cada hoja nameif ws.Name lt;> ThisWorkbook.ActiveSheet.Name Then'Step 4: Ocultar la sheetws.Visible = xlSheetHiddenEnd If'Step 5: Loop al siguiente worksheetNext wsEnd Sub
Paso 1 declara un objeto llamado ws. Este paso crea un contenedor de memoria para cada hoja de cálculo que la macro recorre.
Paso 2 comienza el bucle, diciendo a Excel para evaluar todas las hojas de trabajo en este libro. Tenga en cuenta la diferencia entre ThisWorkbook y ActiveWorkbook. El objeto ThisWorkbook se refiere al libro que contiene el código. El objeto ActiveWorkbook hace referencia al libro activo actualmente. A menudo devuelven el mismo objeto, pero si el libro que ejecuta el código no es el libro activo, vuelven diferentes objetos. En este caso, usted no quiere correr el riesgo hojas escondites en otros libros, por lo que utilizar ThisWorkbook.
En el paso 3, la macro simplemente compara el nombre de la hoja activa a la hoja que se está actualmente en bucle.
Si los nombres de las hojas son diferentes, la macro oculta de la hoja en el paso 4.
En el paso 5, bucle de nuevo para obtener la siguiente hoja. Después se evalúan todas las hojas, la macro termina.
Tenga en cuenta que usted utiliza xlsheetHidden en su macro. Esta propiedad se aplica la piel por defecto de estado que normalmente se consigue cuando usted derecho; clic en una hoja y seleccione Ocultar. En este ocultar estado predeterminado, un derecho de usuario puede, haga clic en cualquier pestaña y selecciona en Mostrar, que muestra todas las hojas ocultas. Pero otro ocultar Estado es más clandestina de la predeterminada. Si utiliza xlSheetVeryHidden para ocultar sus hojas, los usuarios no podrán verlos a todos - incluso si la derecha; haga clic en una ficha y elija Mostrar. La única manera de mostrar una hoja oculta de esta manera es utilizar VBA.
Cómo utilizar la macro
Para implementar esta macro, puede copiar y pegarlo en un módulo estándar:
Activar el Editor de Visual Basic presionando Alt + F11.
derecha, haga clic en el nombre del proyecto / libro en la ventana del proyecto.
Seleccione Insertar-Module.
Escriba o pegue el código en el módulo recién creado.