Совет. Другие языки - Google-Translated. Вы можете посетить English версия этой ссылки.
Войти
x
or
x
x
Регистрация
x

or

Как скопировать лист и переименовать на основе значения ячейки в Excel?

Обычно вы можете применять Переместить или скопировать чтобы скопировать рабочий лист, а затем введите новое имя для копии вручную по мере необходимости. Но пытались ли вы переименовать лист на основе значения ячейки после копирования рабочего листа? В этой статье я расскажу о том, как автоматически переименовать рабочий лист на основе значения ячейки при создании копии.

Скопируйте рабочий лист и переименуйте его на основе значения ячейки с кодом VBA.

Скопируйте рабочий лист несколько раз и переименуйте на основе значений ячеек с помощью Kutools for Excel


Скопируйте рабочий лист и переименуйте его на основе значения ячейки с кодом VBA.


Следующий код VBA может помочь вам скопировать лист и переименовать его с определенным значением ячейки автоматически, выполните следующие действия:

1, Активируйте рабочий лист, который вы хотите скопировать, а затем нажмите и удерживайте ALT + F11 , чтобы открыть Microsoft Visual Basic для приложений окна.

2. Щелчок Вставить > модуль, и вставьте следующий код в модуль Окно.

Код VBA: скопируйте рабочий лист и переименуйте его со значением ячейки:

Sub Copyrenameworksheet()
'Updateby Extendoffice 20160704
    Dim ws As Worksheet
    Set wh = Worksheets(ActiveSheet.Name)
    ActiveSheet.Copy After:=Worksheets(Sheets.Count)
    If wh.Range("A1").Value <> "" Then
    ActiveSheet.Name = wh.Range("A1").Value
    End If
    wh.Activate
End Sub

3, Затем нажмите F5 ключ для запуска этого кода, и ваш текущий рабочий лист был скопирован в текущую книгу после всех листов и переименован с указанным значением ячейки, см. снимок экрана:

doc copy raname по значению 1

Внимание: В приведенном выше коде ссылка на ячейку A1 это значение ячейки, которое вы хотите переименовать для нового скопированного листа, вы можете изменить его на свои нужды.


Скопируйте рабочий лист несколько раз и переименуйте на основе значений ячеек с помощью Kutools for Excel

Вышеупомянутый код может переименовываться только с одним значением ячейки, если вам нужно скопировать лист несколько раз и переименовать их на основе списка значений ячеек, Kutools for ExcelАвтора Создать рабочий лист последовательности может помочь вам выполнить эту задачу как можно быстрее.

Kutools for Excel : с более чем 300 удобными надстройками Excel, бесплатно попробовать без ограничений в 60-дни.

После установки Kutools for Excel, сделайте следующее:

1. Щелчок Предприятие > Рабочий лист > Создание рабочих листов последовательности, см. снимок экрана:

doc copy raname по значению 2

doc copy raname по значению 3

2. В Создать рабочий лист последовательности в диалоговом окне выполните следующие действия:

(1.) Выберите имя листа, которое вы хотите скопировать из Основной рабочий лист выпадающий список;

(2.) Выберите данные в опции диапазона под Имена листов на основе раздел и нажмите doc copy raname по значению 5 чтобы выбрать значения ячеек, которые вы хотите переименовать скопированные листы на основе.

Загрузите Kutools для Excel прямо сейчас!

3, Затем нажмите Ok и конкретный рабочий лист были скопированы несколько раз и переименованы с значениями ячеек, выбранными в новой книге, см. снимок экрана:

doc copy raname по значению 4

Скачать и бесплатно пробную версию Kutools для Excel сейчас!


Демонстрация: несколько копий рабочего листа и переименование на основе значений ячеек с помощью Kutools for Excel

Kutools for Excel: с более чем 200 удобными надстройками Excel, бесплатно попробовать без ограничений в 60-дни. Скачать и бесплатно пробную версию!


  • Супер Формула Бар (легко редактировать несколько строк текста и формул); Макет чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон...
  • Объединить ячейки / строки / столбцы и хранение данных; Содержание сплит-клеток; Объедините дублирующиеся строки и сумму / среднее... предотвратить повторяющиеся клетки; Сравнить диапазоны...
  • Выберите Дубликат или Уникальный Ряды; Выберите пустые строки (все ячейки пусты); Супер найти и нечеткая находка во многих рабочих тетрадях; Случайный выбор ...
  • Точная копия Несколько ячеек без изменения формулы ссылки; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое ...
  • Любимые и быстро вставляемые формулы, Диапазоны, графики и рисунки; Шифрование ячеек с паролем; Создать список рассылки и отправлять электронные письма ...
  • Извлечение текстаДобавить текст, Удалить по позиции, Удалить пространство; Создание и печать промежуточных итогов подкачки; Преобразование содержимого ячеек и комментариев...
  • Суперфильтр (сохранить и применить схемы фильтров к другим листам); Расширенный поиск по месяцам / неделям / дням, частоте и более; Специальный фильтр жирным шрифтом, курсивом ...
  • Объединить рабочие тетради и рабочие листы; Объединение таблиц на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF...
  • Работает с Office 2007-2019 и 365 и поддерживает все языки. Это легко развернуть в вашей компании. Полнофункциональная 60-дневная бесплатная пробная версия.
вкладка kte 201905
  • Включить редактирование и чтение с вкладками в Word, Excel, PowerPoint, Издатель, Доступ, Visio и Проект.
  • Открывайте и создавайте несколько документов в новых вкладках одного и того же окна, а не в новых окнах.
  • Увеличивает вашу производительность на 50% и уменьшает сотни щелчков мышью для вас каждый день!
нижняя часть офиса
Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Phil · 2 years ago
    Your code is what I have been looking for, however the cell contents that I wish to use to rename the sheet is a date.

    For example, on the first sheet, cell A2 displays a date as Monday 3 April 2017.

    What I would like to happen is when the next sheet is created by the macro would be to take the date from A2, add 7 to display, for example, "Monday 10 July, 2017" but rename the new sheet in the dd-mm-yy format, so "10-07-17".

    Is this possible?

    By the way, I have Kutools for Excel, but this spreasheet will be a blood pressure record for my dad who doesnt have Kutools.

    Thanks in advance!
  • To post as a guest, your comment is unpublished.
    joe · 2 years ago
    The code below works great. My question is, is it possible to automatically open the new worksheet (based on A1) and delete the content from the previous sheet as it is being used as the template.




    Sub Copyrenameworksheet()
    'Updateby Extendoffice 20160704
    Dim ws As Worksheet
    Set wh = Worksheets(ActiveSheet.Name)
    ActiveSheet.Copy After:=Worksheets(Sheets.Count)
    If wh.Range("A1").Value "" Then
    ActiveSheet.Name = wh.Range("A1").Value
    End If
    wh.Activate
    End Sub