Сортировка листов в порядке возрастания через VBA в Microsoft Excel 2010
В этой статье мы изучим сортировку листов в порядке возрастания с помощью VBA в Microsoft Excel 2010.
При работе с несколькими листами вы обнаружите, что листы не расположены должным образом. Вы хотите быстро создать макрос, который будет автоматически сортировать лист в порядке возрастания при каждом запуске макроса.
Чтобы отсортировать листы в порядке возрастания, выполните следующие действия:
Нажмите Alt + F11, чтобы открыть экран редактора VB. В меню «Вставка» выберите «Модуль».
-
В модуле введите следующие строки кода:
Sub SortingSheetsInAscending ()
Dim i как целое число, n как целое число, SheetsCounter как целое число, если ActiveWorkbook не имеет значения, затем выйдите из подпрограммы, если ActiveWorkbook.ProtectStructure Затем MsgBox ActiveWorkbook.Name & «is protected», vbCritical, «Sort Sheets»
Exit Sub End If If If MsgBox («Сортировать листы?», VbQuestion + vbYesNo) <> vbYes Then Exit Sub Application.EnableCancelKey = xlDisabled SheetsCounter = Sheets.Count For i = 2 To SheetsCounter For n = 1 To SheetsCounter If Sheets (сущ.) .Name> Sheets (i) .Name Then Sheets (i) .Move before: = Sheets (n)
End If Next n Next i End Sub
-
Запустите макрос из модуля, нажав F5.
Либо нажмите Alt + F11 и вернитесь в Excel, назначьте макрос любому объекту Excel в виде кнопки или значка или нажмите Alt + F8, чтобы выбрать макрос, а затем нажмите «Выполнить».
Вы обнаружите, что листы расположены в алфавитно-цифровом порядке.