Как создать несколько листов из списка значений ячеек?
Есть ли какие-нибудь быстрые или простые методы для создания нескольких рабочих листов на основе списка значений ячеек в Excel? В этой статье я расскажу о некоторых хороших приемах для решения этой задачи.
Создайте несколько листов из списка значений ячеек с кодом VBA
Создайте несколько рабочих листов из списка значений ячеек с помощью Kutools for Excel
Создайте несколько листов из списка значений ячеек с кодом VBA
Чтобы быстро создать несколько новых листов, названных списком значений ячеек, вам может помочь следующий код VBA.
1. Удерживайте ALT + F11 , чтобы открыть Microsoft Visual Basic для приложений окно.
2. Нажмите Вставить > Модулии вставьте следующий код в Модули Окно.
Код VBA: создание нескольких листов из списка ячеек:
Sub AddSheets()
'Updateby Extendoffice
Dim xRg As Excel.Range
Dim wSh As Excel.Worksheet
Dim wBk As Excel.Workbook
Set wSh = ActiveSheet
Set wBk = ActiveWorkbook
Application.ScreenUpdating = False
For Each xRg In wSh.Range("A1:A7")
With wBk
.Sheets.Add after:=.Sheets(.Sheets.Count)
On Error Resume Next
ActiveSheet.Name = xRg.Value
If Err.Number = 1004 Then
Debug.Print xRg.Value & " already used as a sheet name"
End If
On Error GoTo 0
End With
Next xRg
Application.ScreenUpdating = True
End Sub
Внимание: В приведенном выше коде A1: A7 — это диапазон ячеек, на основе которого вы хотите создать листы, измените его по своему усмотрению.
3, Затем нажмите F5 ключ для запуска этого кода, и новые листы были созданы после всех листов в текущей книге, см. снимок экрана:
Создайте несколько рабочих листов из списка значений ячеек с помощью Kutools for Excel
Если вы не знакомы с приведенным выше кодом, вот удобный инструмент:Kutools for Excel, С его Создать рабочие листы последовательностей , рабочие листы будут созданы на основе значений ячеек в новой книге.
После установки Kutools for Excel, пожалуйста, сделайте так:
1. Нажмите Кутулс Плюс > Рабочий лист > Создать рабочие листы последовательностей, см. снимок экрана:
2. В Создать рабочие листы последовательностей диалоговое окно:
(1.) Выберите один рабочий лист, на основе которого вы хотите создать рабочие листы последовательности;
(2.) Затем выберите Данные в варианте диапазона от Имена листов на основе список и щелкните кнопку, чтобы выбрать значения ячеек, которые вы хотите использовать.
3, Затем нажмите Ok , рабочие листы были созданы с именами значений ячеек в новой книге, см. снимок экрана:
Нажмите «Загрузить и получить бесплатную пробную версию». Kutools for Excel от Yhao сейчас!
Лучшие инструменты для работы в офисе
Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%
- Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
- Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон…
- Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны…
- Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
- Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
- Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии…
- Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
- Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF…
- Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.
Вкладка Office: интерфейс с вкладками в Office и упрощение работы
- Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
- Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
- Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!
Комментарии (16)
Оценок пока нет. Оцените первым!
Сегодня я покажу, как заполнить однотипные листы, по шаблону Excel на основе списка.
Переименуем в книге первый лист, это у нас будет список, допустим сотрудников.
Второй лист назовём шаблон, в нем будет находиться таблица, которую сотрудники будут заполнять либо вы будите заполнять для данных сотрудников из списка.
Вот такая будет табличка, потом покажу вам одну формулу в ячейке, как имя листа поместить в ячейку.
Вот список из трех сотрудников, три фамилии они у нас уникальные, отличаются друг от друга это важное условие для работы данного способа заполнения.
Сохраним наш документ как книга Excel с поддержкой макросов с расширением так xlsm, на ленте должен находиться в последнем пункте — пункт Разработчик, если его нет, то в файл, параметры нужно будет в настройках ленты добавить этот пункт, отметьте его галочкой.
В пункте Разработчик, выбираем вкладку Вставить, выбираем кнопку, рисуем кнопку, пока не создаем и не присваиваем никакой макрос. По нажатию кнопки будет формироваться набор листов в книге по списку.
Перейдём на вкладке Разработчик в Visual Basic либо нажмем Alt+F11
, для того чтобы открылся редактор макросов.
Нажмем в меню insert
– module, напишем модуль Sub ListTempl()
, объявим переменную tmpName.
Получим данные нашего списка из листа список в переменную tmpName, объявив диапазон А1:А3. Но если нужно будет больше, то будем менять это значение. Пока в примере оставим так.
Напишем цикл for от 1 до 3, по сколько мы знаем конечное количество записей нашего списка и теперь сделаем копию листа шаблон, создадим новый лист копии листа с шаблоном, шаблон и присвоим имя каждому листу, значение то которое у нас находится в списке. Закончим цикл next i
.
Теперь нажмем правой кнопкой на кнопке, назначить макрос, выберем макрос ListTempl
, OK, сохранить.
Нажмем на кнопку, сформировались три листа с название по списку сотрудников, которые были в списке. И можно будет заполнять или печатать.
Sub ListTempl() Dim tmpName tmpName = Sheets("Шаблон").Range("a1:a3") For i = 1 To 3 Sheets("Шаблон").Copy Before:=Sheets(i) Sheets(i).Name = tmpName(i, 1) Next i End Sub
Вот такой простой код позволяет быстро создать и заполнить книгу листами по определенным данным.
Если нажать на кнопку повторно, то Excel выдаст ошибку, что подобные листы уже используется, надо учитывать этот момент, просто удалите дубли, в этом примере я не буду делать повторную проверку или добавление каких-то случайных значений к имени листов.
Давайте добавим теперь в шапку шаблона формулу, которая будет в ячейку присваивать имя листа, сейчас формула находится на листе с названием шаблон.
Эта формула позволяет получить из значение листа имя листа в ячейку, происходит разбор пути файла до листа.
=ПРОПНАЧ(ПСТР(ЯЧЕЙКА("имяфайла";A1);ПОИСК("]";ЯЧЕЙКА("имяфайла";A1))+1;99))
Давайте допишет для примера как это бывает в таблицах, «Список для », а далее будет фамилия поставляться из названия листа.
Нажмем на кнопку, и как видите, сформировались все листы, и в каждом листе, в этой ячейки у нас будет находиться имя сотрудника.
Ну либо того, что у вас будет находилась в списке, при условии, что эти значения уникальны.
Если же всё-таки вам нужно будет сделать два листа для одной уникальной записи, тут могу предложить следующее.
Изменим в коде диапазон на А4
, так как у нас ещё один пункт добавился и в цикле исправим на четыре.
Sub ListTempl() Dim tmpName tmpName = Sheets("Шаблон").Range("a1:a4") For i = 1 To 4 Sheets("Шаблон").Copy Before:=Sheets(i) Sheets(i).Name = tmpName(i, 1) Next i End Sub
Удалим всё снова и нажмем на кнопку. Опять ошибка, как вариант предлагаю добавить пробел в конце названия дублируемого пункта списка.
В итоге у нас получилось два Ивановых, конечно лучше использовать уникальные значения, тогда этот пример будет достаточно хорошо вам подходить.
Смотрите видео: Листы в Excel из списка по шаблону
Понравилась статья? Поделитесь ею с друзьями и напишите отзыв в комментариях!
Данная команда создает в активной рабочей книге листы с названиями, указанными в ячейках:
Чтобы воспользоваться данной командой внесите названия будущих листов в ячейки листа, перейдите во вкладку «ЁXCEL» Главного меню, нажмите кнопку «Листы» и выберите команду «Создать листы из списка»:
Откроется диалоговое окно выбора диапазона ячеек с названиями листов, укажите диапазон с названиями листов и нажмите «ОК»:
В активную рабочую книгу будут добавлены листы с названиями из выделенных ячеек.
Для отмены операции нажмите кнопку отмены:
Добавить комментарий
MulTEx »
20 Март 2018 4624 просмотров
Создать листы из списка
Данная функция является частью надстройки MulTEx
Вызов команды:
MulTEx -группа Ячейки/Диапазоны —Диапазоны —Создать листы из списка
С помощью данной команды можно быстро создать множество листов, сразу назначив им имена либо на основании диапазона ячеек, либо нумерацией(с указанием начальной и конечной границ). Так же можно указать, создавать листы как копии другого листа(шаблона) или после создания листов копировать в них указанную таблицу.
Для чего это может быть нужно? Например, для создания листов по определенному шаблону на каждый день месяца(от 1 до 31).
Создавая листы, использовать имена:
- из ячеек диапазона — указывается несколько ячеек, в которых записаны имена для создаваемых листов. Например, если необходимо создать листы с именами месяцев, можно в ячейки A1:A12 записать названия месяцев:
и указать эти ячейки в поле из ячеек диапазона. Если значение ячейки содержит символы, недопустимые для использования в именах листов — они будут удалены. - в пределах указанной нумерации — указываются начальная и конечная граница диапазона. При этом конечная граница не может быть меньше начальной.
Задавая список листов следует помнить, что хоть в Excel нет точного ограничения по количеству листов в книгах, ошибка все же может возникнуть при большом количестве листов(это связано с ограничением выделяемой памяти для хранения открытой книги и в различных версиях Excel и операционной системы может различаться).
В качестве наполнения создаваемых листов использовать — здесь можно указать создавать пустые листы или в них должно быть какое-то содержимое(на основании некоего шаблона).
- Лист целиком — в этом случае каждый созданный лист будет в точности повторять выбранный лист(форматирование, формулы, имена, значения). Различаться будут только имена. В данном случае лист-шаблон должен обязательно располагаться в активной на момент выполнения команды книге.
- Диапазон ячеек — в данном случае на каждый созданный лист будут вставлены ячейки указанного диапазона.
-
вставлять данные, начиная с ячейки — указывается ячейка, с которой начинать вставку Диапазона ячеек. Если не указана — будет использована ячейка A1.
- Создавать пустые листы — будут созданы пустые листы.
Создавать листы
- в текущей книге — листы будут добавлены после последнего листа активной книги.
- в новой книге — будет создана новая книга, в которой будут созданы все листы.
Надстройка PLEX для Microsoft Excel 2007-2021 и Office 365
Создание листов с именами из выделенных ячеек
В текущую (или новую) книгу Excel добавляются листы, имена которых берутся из выделенных ячеек.
Например, выделяем список городов на листе и жмем кнопку Создать:
После подтверждения получаем новую книгу с листами-сотрудниками или те же листы добавляются в текущую книгу.
Также можно создавать не пустые листы, а использовать какой-либо существующий лист в качестве шаблона.
Зачем мне это может быть нужно?
Делать это руками в книге с большим количеством листов крайне утомительно. Попробуйте создать книгу с 12 листами: «Январь», «Февраль», «Март» и т.д. вручную — долго и скучно. А при помощи этого инструмента это займет пару секунд.
Может ли это повредить мои данные?
Нет.
Полный список всех инструментов надстройки PLEX