En excel 2010 y versiones anteriores, podemos navegar entre las hojas de un libro mediante los tabs que se encuentran en la parte inferior. Además con las flechitas que tiene en forma de triángulo o haciendo click derecho sobre ellos, con lo que aparecerá una ventanita flotante con todas las hojas que contiene el libro. Este post explica cómo hacer que aparezca una ventana similar al hacer click derecho sobre cualquier celda. Ver la figura de abajo.

Este navegador de hojas lo haremos mediante el uso del siguiente código (puedes copiarlo y pegarlo en un modelo de VBA, no debes copiar los números de la izquierda sólo son de referencia):

[code language=”vb”]
Public Sub Navegador()
Dim AppCB As Object
Dim Bar As Object
Application.CommandBars("Cell").Reset ‘vuelve todo a la normalidad
Set AppCB = Application.CommandBars ‘define el objeto AppCB
‘Agrega el control Indice de Hojas
Set Bar = AppCB("Cell").Controls.Add(Type:=msoControlButton, Temporary:=True)
With Bar ‘Añade las caracterìsticas del control
.BeginGroup = (1) ‘ Inicia nuevo grupo
.Tag = "NavegaHojas"
.Caption = "Indice de Hojas" ‘Nombre
.OnAction = "IndexCode"
.FaceId = 7
End With
End Sub
[/code]

De morado y precedido de una apóstrofe están los comentarios. Aquí una breve explicación de lo que significa el código. Lineas 01 y 15 abren y cierran el procedimiento sub respectivamente. Lineas 02 y 03 se definen objetos. La línea 04 elimina si es que había alguna otra función añadida al menú en celdas. Línea 05 define el objeto AppCB como las barras de comando de excel. Línea 07 añade a la barra de comando “Cell” (celdas”) un nuevo botón de control, 08 usa la función with que hace referencia a Bar de la línea 07. Línea 09 hace una línea divisoria antes del último button control antes de añadir el nuevo control. Línea 10 tag del control, con este nombre se le puede buscar. Línea 11 nombre con que aparecerá el control. Línea 12 indica el código que se ejecutará. Línea 13 ícono para el control, línea 14 cierra el with abierto antes.

IndexCode, tiene como código (tienes que pegarlo en el mismo módulo, hace que se muestre el menu al hacer click derecho):

[code language=”vb”]
Sub IndexCode()
Application.CommandBars("Workbook Tabs").ShowPopup
End Sub
[/code]

Adicionalmente se necesita un código que llame a Navegador, eso se hace con el sigueinte código que hace que dse realice automaticamente cada vez que se hace click derecho (debes pegarlo en el mismo módulo):

[code language=”vb”]
Public Sub Auto_Open()
Call Navegador
End Sub
[/code]

Suerte, esto te sirve para versiones anteriores de Excel como Excel 2003 ó 97. Descarga este archivo haciendo click aquí.

Navegador de hojas Excel 2010

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *