Как создавать новые листы для каждой строки в Excel?
Предположим, у вас есть таблица результатов с именами всех учеников в столбце A. Теперь вы хотите создать новые листы на основе этих имен в столбце A и сделать так, чтобы каждый лист содержал уникальные данные ученика. Или просто создайте новый лист только для каждой строки в таблице, не учитывая имена в столбце A. В этом видео вы получите методы для достижения этого.
Создавайте новые листы для каждой строки с кодом VBA
Создайте новые листы для каждой строки с помощью утилиты Split Data в Kutools for Excel.
Создавайте новые листы для каждой строки с кодом VBA
С помощью следующих кодов вы можете создать новый лист на основе значений столбца или просто создать новые листы для каждой строки в Excel.
1. Нажмите другой + F11 клавиши одновременно, чтобы открыть Microsoft Visual Basic для приложений окно.
2. в Microsoft Visual Basic для приложений окна, нажмите Вставить > Модули. А затем вставьте следующий код в Модули окно.
Код VBA: создать новый лист для каждой строки на основе столбца
Sub parse_data()
'Update by Extendoffice 2018/3/2
Dim xRCount As Long
Dim xSht As Worksheet
Dim xNSht As Worksheet
Dim I As Long
Dim xTRrow As Integer
Dim xCol As New Collection
Dim xTitle As String
Dim xSUpdate As Boolean
Set xSht = ActiveSheet
On Error Resume Next
xRCount = xSht.Cells(xSht.Rows.Count, 1).End(xlUp).Row
xTitle = "A1:C1"
xTRrow = xSht.Range(xTitle).Cells(1).Row
For I = 2 To xRCount
Call xCol.Add(xSht.Cells(I, 1).Text, xSht.Cells(I, 1).Text)
Next
xSUpdate = Application.ScreenUpdating
Application.ScreenUpdating = False
For I = 1 To xCol.Count
Call xSht.Range(xTitle).AutoFilter(1, CStr(xCol.Item(I)))
Set xNSht = Nothing
Set xNSht = Worksheets(CStr(xCol.Item(I)))
If xNSht Is Nothing Then
Set xNSht = Worksheets.Add(, Sheets(Sheets.Count))
xNSht.Name = CStr(xCol.Item(I))
Else
xNSht.Move , Sheets(Sheets.Count)
End If
xSht.Range("A" & xTRrow & ":A" & xRCount).EntireRow.Copy xNSht.Range("A1")
xNSht.Columns.AutoFit
Next
xSht.AutoFilterMode = False
xSht.Activate
Application.ScreenUpdating = xSUpdate
End Sub
Внимание: A1: C1 - диапазон заголовков вашей таблицы. Вы можете изменить его по своему усмотрению.
3. Нажмите F5 ключ для запуска кода, то новые рабочие листы будут созданы после всех рабочих листов текущей книги, как показано на скриншоте ниже:
Если вы хотите напрямую создавать новые листы для каждой строки, не учитывая значение столбца, вы можете использовать следующий код.
Код VBA: напрямую создавать новый лист для каждой строки
Sub RowToSheet()
Dim xRow As Long
Dim I As Long
With ActiveSheet
xRow = .Range("A" & Rows.Count).End(xlUp).Row
For I = 1 To xRow
Worksheets.Add(, Sheets(Sheets.Count)).Name = "Row " & I
.Rows(I).Copy Sheets("Row " & I).Range("A1")
Next I
End With
End Sub
После запуска кода каждая строка активного рабочего листа будет помещена на новый рабочий лист.
Внимание: Строка заголовка также будет помещена на новый лист с этим кодом VBA.
Создайте новые листы для каждой строки с помощью утилиты Split Data в Kutools for Excel.
На самом деле, описанный выше метод сложен и труден для понимания. В этом разделе мы познакомим вас с Разделить данные полезности Kutools for Excel.
Перед применением Kutools for Excel, Пожалуйста, сначала скачайте и установите.
1. Выберите таблицу, которую нужно использовать для создания новых листов, и нажмите Кутулс Плюс> Плевать данные. Смотрите скриншот:
2. в Разделить данные на несколько листов диалоговое окно, сделайте следующее.
A. Для создания новых листов на основе значения столбца:
Б. Для непосредственного создания новых листов для каждой строки:
создается новая книга со всеми новыми листами внутри. Смотрите скриншоты ниже.
Создание новых листов для каждой строки на основе значения столбца:
Создание нового листа для каждой строки без учета значения столбца:
Если вы хотите получить бесплатную (30-дневную) пробную версию этой утилиты, пожалуйста, нажмите, чтобы загрузить это, а затем перейдите к применению операции в соответствии с указанными выше шагами.
Создайте новые листы для каждой строки с помощью утилиты Split Data в Kutools for Excel.
Лучшие инструменты для офисной работы
Улучшите свои навыки работы с Excel с помощью Kutools for Excel и почувствуйте эффективность, как никогда раньше. Kutools for Excel предлагает более 300 расширенных функций для повышения производительности и экономии времени. Нажмите здесь, чтобы получить функцию, которая вам нужна больше всего...
Вкладка Office: интерфейс с вкладками в Office и упрощение работы
- Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
- Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
- Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!