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

Если название месяца, которое вы хотите изменить, хранится в виде текста на различных листах, вы можете использовать функцию поиска и замены Excel, чтобы внести изменения. Просто выполните следующие действия:

  1. Щелкните вкладку первого листа, в котором вы хотите внести изменения.

  2. Удерживая нажатой клавишу Shift, щелкните вкладку последнего рабочего листа, в который вы хотите внести изменения. Теперь должны быть выбраны все рабочие листы, которые вы хотите изменить.

  3. Нажмите Ctrl + H, чтобы открыть вкладку «Заменить» в диалоговом окне «Найти и заменить».

  4. В поле «Найти» введите название старого месяца.

  5. В поле «Заменить на» введите название нового месяца.

  6. Нажмите «Заменить все».

  7. Закройте диалоговое окно «Найти и заменить».

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

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

Sub TabReplace()

Dim I As Integer, J As Integer     Dim sFind As String     Dim sReplace As String     Dim sTemp As String

sFind = InputBox("Text to find?")

sReplace = InputBox("Replace it with?")



If (sFind & sReplace) = "" Then Exit Sub

For I = 1 To Sheets.Count         sTemp = Sheets(I).Name         J = InStr(sTemp, sFind)

While J > 0             sTemp = Left(sTemp, J - 1) & sReplace _               & Mid(sTemp, (J + Len(sFind)))

J = InStr(sTemp, sFind)

Wend

If sTemp <> Sheets(I).Name Then             Sheets(I).Name = sTemp         End If     Next I End Sub

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

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

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

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

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

Этот совет (12275) применим к Microsoft Excel 2007, 2010, 2013 и 2016.

Вы можете найти версию этого совета для старого интерфейса меню Excel здесь:

link: / excel-Changing_Months_in_a_Workbook [Изменение месяцев в книге].