În acest articol, vom învăța sortarea foilor în ordine crescătoare prin VBA în Microsoft Excel 2010.
În timp ce lucrați pe mai multe foi, observați că foile nu sunt aranjate corect. Doriți să creați rapid o macrocomandă care va sorta automat foaia în ordine crescătoare ori de câte ori este rulată macrocomanda.
Pentru a sorta foile în ordine crescătoare, urmați pașii de mai jos:
- Apăsați Alt + F11 pentru a lansa ecranul VB Editor
- Din meniul Insert, selectați Module.
- În modul, tastați liniile de cod după cum urmează:
Sub SortingSheetsInAscending ()
Dim i As Integer, n As Integer, SheetsCounter As Integer
Dacă ActiveWorkbook nu este nimic, ieșiți din Sub
Dacă ActiveWorkbook.ProtectStructure atunci
MsgBox ActiveWorkbook.Name & "is protected", vbCritical, "Sort Sheets"
Ieșiți din Sub
End If
Dacă MsgBox („Sortați foile?”, VbQuestion + vbYesNo) vbYes Apoi ieșiți din Sub
Application.EnableCancelKey = xlDisabled
SheetsCounter = Sheets.Count
Pentru i = 2 To SheetsCounter
Pentru n = 1 To SheetsCounter
Dacă Foi (n) .Nume> Foi (i) .Nume Atunci
Foi (i). Mutați înainte: = Foi (n)
End If
Următorul n
Apoi eu
Sfârșitul Sub
- Rulați macrocomanda din modul apăsând F5.
Alternativ, apăsați Alt + F11 și reveniți la Excel, atribuiți macro oricărui obiect Excel ca buton sau pictogramă sau apăsați Alt + F8 pentru a selecta macro-ul, apoi faceți clic pe Executare.
Veți găsi că foile sunt aranjate într-o ordine alfanumerică.