Создание и присвоение имени рабочему листу с помощью макроса (Microsoft Excel)
Джефф хотел бы создать копию своего «основного» рабочего листа, запросить имя нового рабочего листа и переместить его в конец вкладок рабочего листа, и все это из макроса. Он попытался записать макрос для этого, но это не сработало.
То, что записанный макрос не сработал, не вызывает особого удивления.
Когда вы записываете макрос, вы говорите Excel, чтобы он записал ваши шаги.
Эти шаги (в данном случае) включали в себя присвоение имени рабочему листу, поэтому это имя было записано в макрос. Попробуйте запустить макрос во второй раз, и вы получите сообщение об ошибке, потому что рабочий лист, который вы пытаетесь создать на втором проходе, уже был создан на первом.
В этом случае вам придется написать макрос вручную. Вы можете начать с записи процесса, и вы получите следующий код:
Sub Macro1() Sheets("Master").Select Sheets("Master").Copy After:=Sheets(3) Sheets("Master (2)").Select Sheets("Master (2)").Name = "NewMaster" End Sub
Обратите внимание, что код помещает рабочий лист (после третьего листа), а затем всегда называет его одинаково. Здесь есть что изменить. Что вы хотите сделать, так это изменить его на что-то вроде следующего:
Sub CopyRename() Dim sName As String Dim wks As Worksheet Worksheets("Master").Copy after:=Sheets(Worksheets.Count) Set wks = ActiveSheet Do While sName <> wks.Name sName = Application.InputBox _ (Prompt:="Enter new worksheet name") On Error Resume Next wks.Name = sName On Error GoTo 0 Loop Set wks = Nothing End Sub
Этот макрос скопирует рабочий лист с именем «Мастер» в конец списка листов (независимо от того, сколько листов у вас в книге) и продолжит запрашивать новое имя рабочего листа, пока не будет введено допустимое имя.
_Примечание: _
Если вы хотите узнать, как использовать макросы, описанные на этой странице (или на любой другой странице на сайтах ExcelTips), я подготовил специальную страницу, содержащую полезную информацию.
link: / excelribbon-ExcelTipsMacros [Щелкните здесь, чтобы открыть эту специальную страницу в новой вкладке браузера]
.
ExcelTips — ваш источник экономичного обучения Microsoft Excel.
Этот совет (11929) применим к Microsoft Excel 2007, 2010, 2013 и 2016.
Вы можете найти версию этого совета для старого интерфейса меню Excel здесь:
link: / excel-Creating_and_Naming_a_Worksheet_Using_a_Macro [Создание и присвоение имени рабочему листу с помощью макроса]
.