Ocultar hojas de calculo en un cuaderno Excel

viernes, julio 21, 2006

A veces queremos ocultar una de las hojas de un cuaderno Excel. La forma corriente de hacerlo es mediante el menú Formato---Hoja---Ocultar.




Si queremos prevenir que algún usuario vuelva a hacer visible la hoja, podemos proteger el cuaderno (libro) con el menú de protección y usar una contraseña.



Es sabido que las contraseñas de Excel son muy fáciles de romper. Por lo tanto, este método de ocultar hojas no es muy seguro.

De hecho no existe ningún método seguro, pero si podemos aprovechar una característica que la mayoría de los usuarios de Excel desconocen.


La Hoja de Excel cuenta con una serie de propiedades. Una de ella es la propiedad "Visible". Esta propiedad puede tener uno de tres valores: "xlSheetVisible", "xlSheetHidden" o "xlSheetVeryHidden".



Hojas ocultas con la propiedad xlSheetHidden (la que aplica Excel cuando usamos el menú Formato) pueden hacerse visible con el menú Formato---Hojas---Mostrar. Hojas ocultas con la propiedad xlSheetVeryHidden no aparecen en este menú y por lo tanto serán invisibles para la mayoría de los usuarios regulares de Excel.

Para cambiar la propiedad de la hoja debemos acceder al cuadro de propiedades de esta.
Ya hemos visto que uno de los caminos de hacer visible el cuadro de propiedades es hacer visible la barra de herramientas del Cuadro de Controles y allí pulsar el botón Propiedades




Otra variante es abrir el editor de Visual Basic (Herramientas---Macros---Editor de Visual Basic) y allí cliquear la Hoja1 (o la que queramos ocultar) para activar la ventana de Propiedades



si la ventana no aparece usamos el menú View---Properties Window en el menú del editor.

En ambos casos procedemos de la misma manera. Abrimos la lista desplegable en la ventanilla de la propiedad Visible, y señalamos el valor "2 – xlSheetVeryHidden"




Para mostrar nuevamente la hoja, sólo podemos utilizar la ventanilla de propiedades del editor de Visual Basic y devolver el valor de la propiedad Visible a xlSheetVisible nuevamente.


Categorías: Varios_

Technorati Tags:

29 comments:

Anónimo,  29 octubre, 2006 03:35  

Hola esta bueno este ejemplo de verdad pero tengo un problema, una vez que aplico la propiedad xlshellveryHidden desaparece como tus has dicho la hoja pero la inquietud es como hacerla visible debido a que como la hoja se hace invisible no puedo llegar nuevamente a ella y hacerla visible para poder hacer los cambios, gracias de antemano.

Jorge L. Dunkelman 29 octubre, 2006 22:28  

Hola, como dice el último párrafo de la entrada "Para mostrar nuevamente la hoja, sólo podemos utilizar la ventanilla de propiedades del editor de Visual Basic y devolver el valor de la propiedad Visible a xlSheetVisible nuevamente".
En Herramientas--Macro abres el editor de Visual Basic. Si no ves la ventanilla de Propiedades, la abres con el menú View--Properties Window.

Anónimo,  20 marzo, 2008 00:10  

Hola! buscando información sobre permisologia di con tu nota, es excelente no tenia idea de esto, por eso te molesto con lo siguiente ¿es posible en excel que un usuario pueda ingresar los datos una sola vez pero sin poder modificarlos? y si quiere modificarlos sea necesario ingresar una clave? es esto posible??, si tienes una idea por favor dame un rayo de luz.. gracias!

Jorge L. Dunkelman 20 marzo, 2008 10:38  

Hola
el problema consiste en que para ingresar datos, la celda debe estar desprotegida. Por lo tanto también se podrá cambiar el datos ingresado. Si protegemos la celda, no podemos ingresar datos.
tal vez se podría creando una interfaz con un formulario. El usuario pondría el dato y una macro evaluaría si el valor a ingresar es distinto del valor corriente de la celda. De todas maneras no me parece trivial.

Anónimo,  20 marzo, 2010 02:21  

Estimado Jorge
Te felicito por tu blogspot. MI consulta se refiere a que tengo una hoja de excel oculta. Al ir a la ventana de porpiedades intento cambiar de 2 – xlSheetHidden, a 1 – xlSheetVisible pero me sale un mensaje de "No se puede asignar la propiedad visible de la clase worksheet". Cómo puedo hacer visible esta hoja.
Agradezco tu atención y quedo a la espera de tus noticias. Gracias anticipadas. Saludos cordiales.
Carlos Mallma
Lima-Perú

Jorge L. Dunkelman 20 marzo, 2010 08:53  

¿Está la hoja protegida? En caso de estarlo tienes que desprotegerla antes de poder cambiar la propiedad.

Anónimo,  20 marzo, 2010 15:37  

Estimado Jorge
Mil gracias por tu interés. Sobre mi consulta anterior al parecer no está protegida la hoja que quiero hacer visible, pues cuando voy a "propiedades del proyecto del VBAProject" en la pestaña de "protección" no tiene ninguna contraseña. Quizá este protegida de otra forma?. Cómo la puedo desproteger si así fuera?.
Agradezco tu atención y nuevamente gracias anticipadas.
Saludos cordiales,
Carlos Mallma
Lima-Perú

Jorge L. Dunkelman 20 marzo, 2010 21:07  

Tienes que fijarte en Herramientas-Proteccion. Se puede proteger una hoja sin establecer contraseña.

Anónimo,  21 marzo, 2010 22:28  

Estimado Jorge
Agradezco tu atención. Sobre mi consulta de hacer visible una hoja de Excel. He buscado de que manera puede estar protegido la hoja que intento hacer visible pero no encuentro en donde. Tengo el office 2007 y voy a herramientas del VB pero no hay la opción que mencionas "herramientas-protección". Solo hay una opción que dice propiedades del VB y ahí si hay una pestaña que dice "protección" pero no tiene ninguna contraseña. Quizá (pensé) te referías a la opción de herramientas del Excel, entonces regrese a mi libro y no hay. En su lugar esta la opción "revisar" y ahí si están las opciones para proteger y desproteger, ya sea libros u hojas. Pero en mi caso no hay nada protegido (a no ser que esté protegida de ese modo la hoja que está oculta y la cual no tengo acceso. Finalmente, tengo un programa que se llama Advance Office XP Password Recovery Pro (sirve para hallar las contraseñas olvidadas), pero me da como resultado que ninguna hoja tiene contraseña ni siquiera el VB. Si gustas puedo enviarte el archivo de Excel para que lo revises. Muchas gracias anticipadas y quedo a la espera de tus gratas noticias.
Saludos cordiales,
Carlos Mallma
Lima-Perú

Nestor 01 julio, 2010 18:35  

Me pasa exactamente lo mismo que lo que relata Carlos Mallma en el comentario anterior.
No encuentro la manere de cambiar la propiedad de Xlsheethidden a Visible

Néstor

Jorge L. Dunkelman 01 julio, 2010 18:51  

Néstor,
en Excel 2007 tienes que ir a la pestaña Progrmamador. Allí verás un el icono Propiedades (al lado de Modo de Diseño). Al apretarlo se abre un diálogo con las propiedades de la hoja. La última es Visible y alli cambias la propíedad de la hoja.

Nestor 01 julio, 2010 22:09  

Lo hice pero no tuve éxito, me aparece un mensaje que dice: "No se puede asignar la propiedad visible de la clase worksheet"
De acuerdo a un soft que utilicé la hoja no está protegida
¿Por qué puede ser que me aparezca ese mensaje?
Gracias por responder.
Saludos

Jorge L. Dunkelman 01 julio, 2010 22:18  

Fijate si el cuaderno está protegido.

Nestor 01 julio, 2010 22:56  

Sí, ahí se ve que hay un password.
Password Recovery me da una clave pero parece que no anda porque no se desbloquea...
lo curioso es que las hojas que sí están visbles y protegidas, con ese soft las pude desproteger, o sea que ahí sí anduvo...

martin,  16 julio, 2010 07:02  

muy bueno su blog lo felicito es de gran ayuda y explica todo muy bien ....descargue el archivo tabla de posiciones 40 xls 2003 y que sorpresa que no tenia el fixture ,,,,como hago para colocar solo el marcador en la progamacion de partidos y que la tabla automaticamente me cambie????,, soy colombiano y estoy tratando de hacer la tabla para el campeonato de aqui que son 18 equipos todos contra todos le repito en esta tabla esta pero no esta el fixture entonces toca a notar los marcadores en la hoja de resultados ayudeme gracias y denuevo felicitaciones por el blog

Jorge L. Dunkelman 16 julio, 2010 09:40  

Martín,
así es. El modelo no incluye fixture. Tal vez en el futuro publique un modelo que lo incluya.

martin,  16 julio, 2010 16:27  

hola jorge sera que me puedes ayudar con la formula para anotar estos marcadores y que automaticamente queden en la h de resultados con eso quedarian tambien en la tabla que es el fin,,, gracias,,, ademas como hago para enviarte un archivo que ya tengo para esto denuevo gracias

Jorge L. Dunkelman 20 julio, 2010 06:52  

Martin,
para enviarme un archivo fijate en las instrucciones en la pestaña Ayuda en la parte superior del blog.

Anónimo,  20 julio, 2010 20:06  

Jorge, acabo de encontrar tu blog y me parece muy didactico. Tengo el mismo problema que Carlos Mallma y quisiera molestarte con mi problema asi como enviarte mi archivo. A la espera de tu gentil ayuda y apoyo.
Un Saludo
Javier Riveros
Arequipa - Peru

Jorge L. Dunkelman 20 julio, 2010 20:19  

Javier,
estás invitado a enciarme tu archivo siguiendo las instrucciones que aparecen en la pestaña Ayuda (en la parte superior del blog).

Anónimo,  06 abril, 2011 21:56  

Buens tardes.

Tengo una Casilla de Verificacion que me arroja el valor VERDADERO o FALSO a una celda.

Ademas, tengo varias hojas ocultas.

Como puedo hacer para que aparezca tal hoja oculta cuando la celda es VERDADERA?

Desde ya muchas gracias

Jorge L. Dunkelman 06 abril, 2011 23:54  

Programando un evento ligado a la celda donde aparece el valor VERDADERO o FALSO (estoy suponiendo que usas un control de la barra de formulario).
Si no estás familiarizado con el tema puedes hacer una búsqueda en el blog con la palabra "evento".

Anónimo,  24 octubre, 2011 09:50  

Hola, he creado un excel y quiero que de las 4 hojas que tiene, tan solo muestre una. Lo he intentado cambiando la propiedaed visible de las distintas hojas a Xlsheetveryhidden. Pero entonces me sale el comentario:"No se puede asignar la propiedad visible de la clase worksheet". No sé cual es el problema; la hoja no está protegida...
Muchas gracias de antemano por la ayuda.
Sergio.

Jorge L. Dunkelman 24 octubre, 2011 18:25  

Sergio,

parece ser que estás ocultando todas las hojas. El cuaderno debe tener por lo menos una hoja visible.

Jorge Herrera,  12 abril, 2012 23:59  

Don Jorge Dunkelman, gracias por sus consejos. Tengo una duda en cuanto a ocultar hojas de un libro en excel, con una clave, la cual se pone en Herramientas, Propiedades...
Pero al mostrar de nuevo la o las hojas que acabo de ocultar, NO me pide la contraseña, por lo que no entiendo, no me funciona....

Jorge L. Dunkelman 15 abril, 2012 14:36  

¿Te refieres a ocultar o a proteger?

Anónimo,  17 enero, 2014 12:52  

jorge ¡¡¡ SOS ¡¡¡ puedo enviarte un archivo para q pueda ver la pestaña TRANSLATIONS está con la xlsheetHidden y no puedo cambiarla de ningún modo pq no he creado yo el archivo y no sé la contraseña

Jorge Dunkelman 17 enero, 2014 13:19  

Si no sabes la contraseña no puedo ayudarte. En la Internet puedes encontrar programas para romper contraseñas, algunos gratuitos.

Publicar un comentario

Google+ Followers

Seguidores

Google+ Badge

Términos Legales

  © Blogger template On The Road by Ourblogtemplates.com 2009

Back to TOP