Arkkien lajittelu nousevassa järjestyksessä VBA: n avulla Microsoft Excel 2010: ssä

Anonim

Tässä artikkelissa opimme lajittelemaan arkkeja nousevassa järjestyksessä Microsoft Excel 2010: n VBA: n kautta.

Työskennellessäsi useilla arkeilla huomaat, että arkkia ei ole järjestetty oikein. Haluat luoda makron nopeasti, joka lajittelee taulukon automaattisesti nousevaan järjestykseen aina, kun makro suoritetaan.

Voit lajitella taulukot nousevaan järjestykseen seuraavasti:

  • Käynnistä VB Editor -näyttö painamalla Alt+F11
  • Valitse Lisää -valikosta Moduuli.

  • Kirjoita moduuliin koodirivit seuraavasti:

AlalajitteluSheetsInAscending ()

Dim i kokonaislukuna, n kokonaislukuna, SheetsCounter kokonaislukuna

Jos ActiveWorkbook ei ole mitään, sulje Sub

Jos ActiveWorkbook.ProtectStructure Sitten

MsgBox ActiveWorkbook.Name & "on suojattu", vbCritical, "Lajittele taulukot"

Lopeta Sub

Loppu Jos

Jos MsgBox ("Lajittele taulukot?", VbQuestion + vbYesNo) vbKyllä Lopeta sitten

Application.EnableCancelKey = xlDisabled

SheetsCounter = Sheets.Count

I = 2 SheetsCounterille

N = 1 SheetsCounterille

Jos Sheets (n) .Nimi> Sheets (i) .Name then

Arkit (i). Siirry ennen: = Arkit (n)

Loppu Jos

Seuraava n

Seuraavaksi minä

End Sub

  • Suorita makro moduulista painamalla F5.

Vaihtoehtoisesti voit painaa Alt+F11 ja palata Exceliin, määrittää makron mille tahansa Excel -objektille painikkeena tai kuvakkeena tai valita makron painamalla Alt+F8 ja napsauttaa sitten Suorita.
Huomaat, että arkit on järjestetty aakkosnumeerisessa järjestyksessä.