En este artículo, aprenderemos a clasificar las hojas en orden ascendente a través de VBA en Microsoft Excel 2010.

Mientras trabaja en varias hojas, descubre que las hojas no están ordenadas correctamente. Desea crear una macro rápidamente que clasifique automáticamente la hoja en orden ascendente siempre que se ejecute la macro.

img1

Para ordenar las hojas en orden ascendente, siga los pasos que se mencionan a continuación:

Presione Alt + F11 para iniciar la pantalla VB Editor. Desde el menú Insertar, seleccione Módulo.

img2

  • En el Módulo, escriba las líneas de código de la siguiente manera:

Sub SortingSheetsInAscending ()

Dim i como entero, n como entero, SheetsCounter como entero Si ActiveWorkbook no es nada, salga de Sub Si ActiveWorkbook.ProtectStructure Entonces MsgBox ActiveWorkbook.Name & «está protegido», vbCritical, «Ordenar hojas»

Salir del Sub End If If MsgBox («¿Ordenar Hojas?», VbQuestion + vbYesNo) <> vbYes Luego Salir de la Sub Aplicación.EnableCancelKey = xlDisabled SheetsCounter = Sheets.Count For i = 2 To SheetsCounter For n = 1 To SheetsCounter If Sheets (n) .Nombre> Hojas (i) .Nombre Luego Hojas (i). Mover antes: = Hojas (n)

End If Next n Next i End Sub

img3

  • Ejecute la macro desde el Módulo presionando F5.

Alternativamente, presione Alt + F11 y regrese a Excel, asigne la macro a cualquier objeto de Excel como un botón o icono, o presione Alt + F8 para seleccionar la macro y luego haga clic en Ejecutar.

Verá que las hojas están ordenadas en orden alfanumérico.

img4