Cuando tienes un libro con una gran cantidad de hojas ( he visto libros contables enormes ), es importante poder moverte en ellas de una manera sencilla, esto no siempre se logra, sobre todo si no se ha planeado el orden de tales hojas, esto se da porque a medida que se va necesitando se agregan nuevas hojas.
Pero aquí les traigo una solución muy sencilla, la idea es que con un solo click se ordenen todas las hojas del libro, ya sea de manera ascendente o descendente.
Para ejecutar la macro solo debes presionar en el botón que corresponda, también puedes presionar la combinación de teclas CONTROL-A o CONTROL-D
Como el orden de las hojas cambiara, la hoja que contenga los botones se moverá de lugar, por tal motivo sugiero mejor el uso de la combinación de teclas, esto porque se puede ejecutar desde cualquier hoja.
Como agregar combinación de teclas para ejecutar la macro
1.- Presionar las teclas de función ALT – F11 para abrir la ventana con los nombres de macros que tiene el libro.
2.- En esa ventana, seleccione la macro deseada y dar click en opciones.
3.- En la ventana de opciones, deberá indicar la tecla que sera combinada con la tecla control.
De esa manera, sin importar en que hoja del libro se encuentre, podrá teclear la combinación de teclas que corresponda para cada macro, de tal modo que dicha macro sera ejecutada.
La macro para ordenar hojas
Ascendente
Sub OrdenaDe()
Dim x, y As Integer
For x = 1 To Worksheets.Count
For y = x To Worksheets.Count
If Worksheets(y).Name < Worksheets(x).Name Then
Worksheets(y).Move before:=Worksheets(x)
End If
Next y
Next x
End Sub
Descendente
Sub OrdenaDe()
Dim x, y As Integer
For x = 1 To Worksheets.Count
For y = x To Worksheets.Count
If Worksheets(y).Name > Worksheets(x).Name Then
Worksheets(y).Move before:=Worksheets(x)
End If
Next y
Next x
End Sub
Obviamente esta macro no tendria sentido en un libro con pocas hojas, pero si ya tienes un libro con una gran cantidad de hojas, puedes usar estas macros para ordenarlas, de ese modo te sera mucho mas sencillo encontrar tus hojas por el orden que tiene.
Un ejemplo es el uso de nombres para clientes, una hoja para cada cliente, si usas estas macros, puedes generar un orden alfabético, eso simplificara enormemente el moverte por dichas hojas.