Clasificación de hojas en orden ascendente a través de VBA en Microsoft Excel 2010

Anonim

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.

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
  • En el menú Insertar, seleccione Módulo.

  • 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 de Sub

Terminara si

Si MsgBox ("¿Ordenar hojas?", VbQuestion + vbYesNo) vbYes, salga de Sub

Application.EnableCancelKey = xlDisabled

SheetsCounter = Sheets.Count

Para i = 2 al contador de hojas

Para n = 1 al contador de hojas

Si Sheets (n) .Name> Sheets (i) .Name Entonces

Hojas (i). Mover antes: = Hojas (n)

Terminara si

Siguiente n

Siguiente yo

End Sub

  • 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 dispuestas en orden alfanumérico.