Я создал пару макросов:
Макрос 1:
Sub Sheetlist()
Dim x As Integer
Sheets.Add After:=ActiveSheet
ActiveSheet.Name = "sheetlist"
Range("A1").Select
ActiveCell.FormulaR1C1 = "Sheet List"
Range("C1").Select
ActiveCell.FormulaR1C1 = "New List"
For x = 1 To Worksheets.Count
Cells(x + 1, 1).Value = Worksheets(x).Name
Next x
End Sub
Этот макрос создает лист в вашей текущей книге под названием "sheetlist" со списком всех листов в вашемтекущая рабочая тетрадь.На этом листе также есть столбец под названием «Новый список» (C1), в который можно ввести столько имен листов, сколько вы хотите переименовать.
Теперь вы можете исключить имена из столбца A1, которые хотитеисключить из процесса переименования.Убедитесь, что в столбцах A и C нет пробелов и что совпадают числа имен в A и C.
Теперь вы готовы запустить второй макрос:
Sub batchrename()
'
' batchrename Macro
'
Dim OldSheetName As String
Dim NewSheetName As String
Dim SheetCount As Integer
Dim NewSheetList As String
NewSheetList = InputBox("How many names are there?") + 1
For SheetCount = 1 To Range("C2:C" & NewSheetList).Count
OldSheetName = Sheets("sheetlist").Cells(SheetCount + 1, 1)
NewSheetName = Sheets("sheetlist").Cells(SheetCount + 1, 3)
Sheets(OldSheetName).Select
ActiveSheet.Name = NewSheetName
Next SheetCount
End Sub
Этот макрос перейдет к именам, перечисленным в списке листов A, и изменит их на имена, перечисленные в списке листов C. В запросе будет указано, где находится список имен, введите количество имен в столбце C и нажмите клавишу ввода..
Наслаждайтесь