Сортиране на листове във възходящ ред чрез VBA в Microsoft Excel 2010

Anonim

В тази статия ще научим сортирането на листове във възходящ ред чрез VBA в Microsoft Excel 2010.

Докато работите върху няколко листа, установявате, че листовете не са правилно подредени. Искате бързо да създадете макрос, който автоматично да сортира листа във възходящ ред при всяко изпълнение на макроса.

За да сортирате листовете във възходящ ред, следвайте посочените по -долу стъпки:

  • Натиснете Alt+F11, за да стартирате екрана на VB Editor
  • От менюто Вмъкване изберете Модул.

  • В модула въведете кодовите редове, както следва:

Sub SortingSheetsInAscending ()

Dim i As Integer, n As Integer, SheetsCounter As Integer

Ако ActiveWorkbook не е нищо, излезте от Sub

Ако ActiveWorkbook.ProtectStructure Тогава

MsgBox ActiveWorkbook.Name & "е защитен", vbCritical, "Сортиране на листове"

Изход от Sub

Край Ако

Ако MsgBox ("Сортиране на листове?", VbQuestion + vbДаНе) vbДа След това излезте от Sub

Application.EnableCancelKey = xlDisabled

SheetsCounter = Sheets.Count

За i = 2 Към SheetsCounter

За n = 1 Към SheetsCounter

Ако Sheets (n) .Name> Sheets (i) .Name Тогава

Листове (i). Преместване преди: = Листове (n)

Край Ако

Следващ n

Следва i

End Sub

  • Стартирайте макроса от модула, като натиснете F5.

Друга възможност е да натиснете Alt+F11 и да се върнете в Excel, да присвоите макроса на всеки обект в Excel като бутон или икона или да натиснете Alt+F8, за да изберете макроса, след което щракнете върху Изпълни.
Ще откриете, че листовете са подредени в азбучно -цифров ред.