Когда вы начинаете новую книгу, очень часто каждый рабочий лист присваивает имени другому месяцу в году. Если вы будете делать это немного, то знаете, что может быть утомительно переименовывать каждый рабочий лист, в свою очередь, именно так, как вам нужно.

Следующий макрос был разработан, чтобы помочь в этих ситуациях. Он проверяет имена рабочих листов в вашей книге, переименовывая их в месяцы года, если они начинаются с букв «Лист». Если в книге недостаточно листов, она добавляет листы по мере необходимости для каждого месяца года.

Sub DoMonths()

Dim J As Integer     Dim K As Integer

For J = 1 To 12         If J <= Sheets.Count Then             If Left(Sheets(J).Name, 5) = "Sheet" Then                 Sheets(J).Name = MonthName(J)

Else                 Sheets.Add.Move after:=Sheets(Sheets.Count)

ActiveSheet.Name = MonthName(J)

End If         Else             Sheets.Add.Move after:=Sheets(Sheets.Count)

ActiveSheet.Name = MonthName(J)

End If     Next J

For J = 1 To 12         If Sheets(J).Name <> MonthName(J) Then             For K = J + 1 To Sheets.Count                 If Sheets(K).Name = MonthName(J) Then                     Sheets(K).Move Before:=Sheets(J)

End If             Next K         End If     Next J

Sheets(1).Activate End Sub

Последним шагом в макросе является то, что он размещает рабочие листы в правильном порядке для месяцев с 1 по 12. В результате, если у вас остались какие-либо другие рабочие листы в книге (другими словами, у вас были некоторые листы, которые начинались не с буквы «Sheet», то эти листы оказываются в конце книги через 12 месяцев.

Обратите внимание, что макрос использует функцию MonthName, встроенную в VBA. Она возвращает полное название месяца, на которое указывает переданный ему номер (от 1 до 12) (если вы попытаетесь использовать его с числом вне этого диапазона, будет возвращена ошибка).

_Примечание: _

Если вы хотите знать, как использовать макросы, описанные на этой странице (или на любой другой странице на сайтах ExcelTips), я подготовил специальную страницу, содержащую полезную информацию.

link: / excelribbon-ExcelTipsMacros [Щелкните здесь, чтобы открыть эту специальную страницу в новой вкладке браузера].

ExcelTips — ваш источник экономичного обучения Microsoft Excel.

Этот совет (11148) применим к Microsoft Excel 2007, 2010, 2013, 2016, 2019 и Excel в Office 365. Вы можете найти версию этого совета для старого интерфейса меню Excel здесь:

link: / excel-Sheets_for_Months [Таблицы за месяцы].