Як розділити аркуш Excel на кілька робочих аркушів (3 способи) -.

  • Поділитися Цим
Hugh West

Великий набір даних може містити кілька значень, заснованих на одному стовпці. Якщо ви хочете, ви можете розділити значення одних і тих же категорій (Департамент, Місяць, Регіон, Штати і т.д.) або ваших уподобань на різні робочі аркуші або книги. У цій статті я збираюся пояснити, як розділити аркуш Excel на кілька робочих аркушів.

Щоб зробити це пояснення більш зрозумілим для вас, я збираюся використовувати зразок набору даних. У наборі даних є 4 стовпці, що представляють інформацію про продажі за різні місяці. Ці стовпці мають наступний вигляд Продавець, Регіон, Місяць, і Продажі .

Завантажити на практиці

Розділити аркуш Excel на кілька робочих аркушів.xlsm

Способи розділення аркуша Excel на декілька робочих аркушів

1. використання фільтра та копіювання

З будь-якого аркуша можна розбити дані на кілька аркушів за допомогою Фільтр .

Спочатку виділіть діапазон комірок, до якого потрібно застосувати функцію Фільтр .

Тут я виділив діапазон комірок B3:E15 .

Потім відкрийте Дані вкладка>> вибрати Фільтр .

Ви також можете використовувати CTRL + SHIFT + L подати заявку Фільтр за допомогою клавіатури .

Негайно, Фільтр застосовується до виділеного діапазону комірок.

Далі необхідно натиснути на кнопку Місяць стовпчик, оскільки я хочу розділити дані в залежності від Місяць цінності.

Звідти я знято виділення все, крім січень Нарешті, натисніть ГАРАЗД. .

Тепер всі значення, де Місяць це січень фільтруються.

Тоді, Прийом. дані та Паста на новий аркуш.

Тут я дав назву новому аркушу Січень. Таким чином, ви побачите всю інформацію про продажі по січень представлено тут.

Щодо решти Місяці Ви можете виконати ті ж самі процедури.

Знову ж таки, натисніть на кнопку Місяць стовпчик, оскільки я хочу розділити дані в залежності від Місяць цінності.

Звідти зняти позначку все, крім лютий Нарешті, натисніть ГАРАЗД. .

Наразі, всі значення для лютий Місяць фільтруються.

Тоді, Прийом. дані та Паста на новий аркуш.

Пізніше я назвав новий аркуш Лютий. Таким чином, ви побачите всю інформацію про продажі за Місяць з лютий представлено тут.

Знову ж таки, натисніть на кнопку Місяць стовпчик, оскільки я хочу розділити дані в залежності від Місяць цінності.

Звідти зняти позначку все, крім Березень Нарешті, натисніть ГАРАЗД. .

Тепер ви побачите всі значення Березень фільтруються.

Тоді, Прийом. дані та Паста на новий аркуш.

Зрештою, я назвав новий аркуш Березень Таким чином, ви побачите всю інформацію про продажі для Березень представлено тут.

Читати далі: Розділити аркуш Excel на кілька аркушів на основі рядків

2. Розділити аркуш Excel на основі кількості рядків за допомогою VBA

Перед початком процедури необхідно пам'ятати, що починати введення даних потрібно з перших рядків.

А тепер відкрийте Розробник вкладка>> вибрати Visual Basic

Відкриється нове вікно Microsoft Visual Basic для додатків .

Тепер, від Вставка вибрати Модуль

A Модуль відкриється там.

Після цього, впишіть наступний код в поле Модуль .

 Sub SplitExcelSheet_into_MultipleSheets() Dim WorkRng As Range Dim xRow As Range Dim SplitRow As Integer Dim xWs As Worksheet On Error Resume Next EcelTitleId = "Split Row Numt" Set WorkRng = Application.Selection Set WorkRng = Application.InputBox("Range", ExcelTitleId, WorkRng.Address, Type:=8) SplitRow = Application.InputBox("Split Row Num, ExcelTitleId, 4, Type:=1) Set xWs = WorkRng.ParentSet xRow = WorkRng.Rows(1) Application.ScreenUpdating = False For i = 1 To WorkRng.Rows.Count Step SplitRow resizeCount = SplitRow If (WorkRng.Rows.Count - xRow Row + 1) <SplitRow Then resizeCount = WorkRng.Rows.Count - xRow Row + 1 xRow.Resize(resizeCount).Copy Application.Worksheets.Add after:=Application.Worksheets(Application.Worksheets.Count)Application.ActiveSheet.Range("A1").PasteSpecial Set xRow = xRow.Offset(SplitRow) Next Application.CutCopyMode = False Application.ScreenUpdating = True End Sub 

Тут я створив підпроцедуру, яка називається Розділити аркуш Excel_в_кілька_аркушів .

Там, де я оголосив пару змінних, це WorkRng і xRow як Діапазон введіть потім

SplitRow як Ціле число також xWs як Робочий аркуш тип.

Також, використовуються ExcelTitleId щоб віддати належне діалогове вікно титул.

Я вказав номер розділеного рядка 4 розбити дані на 4 рядки, оскільки в моєму наборі даних Місяць з січень має 4 ряди.

Нарешті, використовували За зациклити на SplitRow до тих пір, поки не закінчиться заданий діапазон комірок.

Тоді, Зберегти код і поверніться на робочий аркуш.

А тепер відкрийте Розробник вкладка>> Від Вставка вибрати Кнопка

A діалогове вікно з'явиться.

Присвоїти Макрос у вставленому Кнопка .

Виберіть Розділити аркуш Excel_в_Множинні аркуші від Назва макросу потім натисніть ГАРАЗД. .

Просто натисніть на кнопку Кнопка для запуску Макрос .

А тепер діалогове вікно з'явиться вікно, куди можна внести дані діапазону.

Тут я виділив діапазон комірок B1:E12

Потім натисніть ГАРАЗД. .

Інший діалогове вікно з'явиться вікно, яке покаже кількість вибраних рядків, яку ви вже вказали в коді для розбиття набору даних.

➤ У коді я надав 4 як Номер рядка, що розділяється

Як я загалом 12 рядів так з 4 ряди будуть 3 аркуші .

В Аркуш1 Ви побачите дані перших 4-х рядків.

В Лист2 Ви побачите дані рядків з 5 по 8.

В Лист3 Ви побачите дані останніх 4-х рядків.

Читати далі: Excel VBA: Розбиття аркуша на кілька аркушів на основі рядків

Схожі читання

  • Як розділити екран в Excel (3 способи)
  • [Виправлено:] Не працює перегляд Excel пліч-о-пліч
  • Як розділити аркуші в Excel (6 ефективних способів)
  • Відкриваємо два файли Excel окремо (5 простих способів)
  • Як розділити аркуш Excel на кілька файлів (3 швидких способи)

3. розділити аркуш Excel на кілька книг на основі стовпця

Перед початком процедури потрібно пам'ятати, що починати дані потрібно з першого рядка і першого стовпчика.

А тепер відкрийте Розробник вкладка>> вибрати Visual Basic

Відкриється нове вікно Microsoft Visual Basic для додатків .

Тепер, від Вставка вибрати Модуль

A Модуль відкриється там.

Після цього, впишіть наступний код в поле Модуль .

 Sub SplitSheetIntoMultipleWorkbooksBasedOnColumn() Dim objWorksheet As Excel.Worksheet Dim nLastRow, nRow, nNextRow As Integer Dim strColumnValue As String Dim objDictionary As Object Dim varColumnValues As Variant Dim varColumnValue As Variant Dim objExcelWorkbook As Excel.Workbook Dim objSheet As Excel.Worksheet Set objWorksheet = ActiveSheet nLastRow =objWorksheet.Range("A" & objWorksheet.Rows.Count).End(xlUp).Row Set objDictionary = CreateObject("Scripting.Dictionary") For nRow = 2 To nLastRow strColumnValue = objWorksheet.Range("C" & nRow).Value If objDictionary.Exists(strColumnValue) = False Then objDictionary.Add strColumnValue, 1 End If Next varColumnValues = objDictionary.KeysFor i = LBound(varColumnValues) To UBound(varColumnValues) varColumnValue = varColumnValues(i) Set objExcelWorkbook = Excel.Application.Workbooks.Add Set objSheet = objExcelWorkbook.Sheets(1) objSheet.Name = objWorksheet.Name objWorksheet.Rows(1).EntireRow.Copy objSheet.Activate objSheet.Range("A1").Select objSheet.PasteFor nRow = 2 To nLastRow If CStr(objWorksheet.Range("C" & nRow).Value) = CStr(varColumnValue) Then objWorksheet.Rows(nRow).EntireRow.Copy nNextRow = objWorksheet.Range("A" & objWorksheet.Rows.Count).End(xlUp).Row + 1 objWorksheet.Range("A" & nNextRow).Select objSheet.PasteobjSheet.Columns("A:D").AutoFit End If Next Next End Sub 

Тут я створив підпроцедуру, яка називається Розділити аркуш на декілька книг на основі стовпця де я оголосив декілька змінних.

Я використав 3 ЗА петлі. Перша ЗА цикл перерахує рядки від рядка 2 до останнього рядка зі значенням, щоб отримати конкретний стовпець. У прикладі наведено приклад "C" колонка.

Ви можете змінити його під свій випадок

2-й За цикл створить нову книгу Excel.

3-й Фо цикл r скопіює дані з того самого стовпця "C" значення в нову книгу з 2-го рядка до останнього рядка зі значенням.

Тоді, Зберегти код і поверніться на робочий аркуш.

А тепер відкрийте Вид вкладка>> Від Макроси вибрати Перегляд макросів

A діалогове вікно з'явиться.

Наразі, від Назва макросу виберіть пункт Розділити аркуш на декілька книг на основі стовпця також виберіть робочу книгу в межах Макроси в .

Нарешті, Біжи обраний Макрос .

Нарешті, ви побачите, що створено 3 нові робочі книги, оскільки є 3 різні Місяці у колонці C "У нас тут є Книга 1 для січень .

На сьогоднішній день, на жаль, це не так. Книга 2 для лютий .

На сьогоднішній день, на жаль, це не так. Книга 3 для Березень .

Читати далі: Як розділити аркуш Excel на кілька аркушів на основі значення стовпця

Висновок

У цій статті я пояснив 3 способи, як розділити аркуш Excel на кілька робочих аркушів. Ви можете скористатися будь-яким із пояснених способів розділити аркуш Excel на кілька робочих аркушів. Якщо у вас виникла плутанина або запитання щодо цих методів, ви можете прокоментувати їх нижче.

Г’ю Вест — досвідчений тренер і аналітик Excel із понад 10-річним досвідом роботи в галузі. Він має ступінь бакалавра з бухгалтерського обліку та фінансів і ступінь магістра з ділового адміністрування. Г’ю має пристрасть до викладання та розробив унікальний підхід до викладання, який легко зрозуміти та дотримуватися. Його експертне знання Excel допомогло тисячам студентів і професіоналів у всьому світі вдосконалити свої навички та досягти успіху в кар’єрі. У своєму блозі Г’ю ділиться своїми знаннями зі світом, пропонуючи безкоштовні навчальні посібники з Excel та онлайн-навчання, щоб допомогти окремим особам і компаніям повністю розкрити свій потенціал.