Съвет: Други езици са преведени от Google. Можете да посетите English версия на тази връзка.
Влизане
x
or
x
x
Регистрирам
x

or

Как да разделяте данните на няколко работни листа по редове, които се броят в Excel?

Например, имам набор от списъци с данни, сега искам да я разделя на няколко работни листа по брой редове, в този пример ще го разделя на всеки 5 редове (вижте следващите екранни снимки). Има ли някакви начини да ни помогнете бързо да разрешим този проблем? Тук ще ви покажа два трика, за да го направите лесно.


док-разделен на данни по rows1


-2



док-разделен на данни по rows2
док-разделен на данни по rows3
док-разделен на данни по rows4
док-разделен на данни по rows5

Разделете данните в няколко работни листа по редове с VBA кода

Разделете данните в няколко работни листа по редове с Kutools за Excel


arrow синя десен балон Разделете данните в няколко работни листа по редове с VBA кода


Следният код на VBA може да ви помогне да разделите редовете на няколко работни листа по брой редове, направете следното:

1, Задръжте надолу ALT + F11 ключ за отваряне на Microsoft Visual Basic за приложения прозорец.

2. Щракнете Поставете > Модули, и поставете следния код в прозореца на модула.

VBA: Разделяне на данни в листове по редове, броили в Excel.

Sub SplitData()
'Updateby20140617
Dim WorkRng As Range
Dim xRow As Range
Dim SplitRow As Integer
Dim xWs As Worksheet
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
SplitRow = Application.InputBox("Split Row Num", xTitleId, 5, Type:=1)
Set xWs = WorkRng.Parent
Set 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

3, След това натиснете F5 ключът за стартиране на кода и се появява диалогов прозорец за избор на обхват за разделяне, след което щракнете върху OK, и друг диалогов прозорец, за да определите броя на редовете. Вижте екранна снимка:

4. Кликнете OK, а обхватът е разделен на няколко листа с броя на редовете.

Забележка: Разделените работни листове се намират в задната част на главния работен лист.


arrow синя десен балон Разделете данните в няколко работни листа по редове с Kutools за Excel

Горепосоченият код може да раздели данните само по посочения брой редове и няма да добави заглавието за всеки от данните на листа, ако данните ви имат заглавието.

Но с Kutools за ExcelЕ Разделени данни, не само можете да вмъкнете заглавките за всеки от данните за работен лист, но и да зададете имената на новите разделни листове.

Kutools за Excel включва повече от 300 удобни инструменти за Excel. Безплатно, без да се ограничавате в 30 дни. Махни го сега

Ако сте инсталирали Kutools за Excel, моля, направете следното:

1, Изберете диапазона от данни, които искате да разделите.

2. Щракнете Начинание > Инструменти за работен лист > Разделени данни (или Начинание > Разделени данни ), вижте екранната снимка:

док-разделен на данни по rows6

3. В Разделете данните в няколко работни листа диалогов прозорец:

  • Изберете Фиксирани редове от Разделяне на базата на опция и въведете броя на броя редове, които искате да разделите за всеки работен лист. (Ако данните ви имат заглавки и искате да ги вмъкнете във всеки нов разделен работен лист, моля, проверете Данните ми имат заглавки опция.)
  • След това можете да зададете имената на разделените таблици под Ново име на работни листове раздел, изберете правилата за имената на работните листове от Правилник падащ списък, можете да добавите Префикс or Наставка за имената на листа също. Вижте екранна снимка:

док-разделен на данни по rows7

4, След като зададете настройките, кликнете върху OK, а избраните данни са разделени на няколко работни листа на нова работна книга от всеки 5 редове. И заглавията се добавят за всеки нов работен лист. Вижте екранна снимка:

док-разделен на данни по rows8

Кликнете, за да научите повече за тази функция за разделяне на данни.

Свързана статия:

Как да разделяме данните на няколко работни листа въз основа на колона в Excel?



Препоръчителни инструменти за производителност

Таб на Office

златна звезда1 Носете удобни раздели в Excel и друг софтуер на Office, също като Chrome, Firefox и новия Internet Explorer.

Kutools за Excel

златна звезда1 Невероятно! Увеличете производителността си в 5 минути. Не се нуждаете от специални умения, освен два часа всеки ден!

златна звезда1 300 Нови функции за Excel, Направете Excel много лесен и мощен:

  • Обединяване на клетки / редове / колони без загуба на данни.
  • Комбинирайте и консолидирайте няколко листа и работни книги.
  • Сравняване на диапазони, копиране на множество диапазони, конвертиране на текст към дата, преобразуване на единица и валута.
  • Брой по цветове, междинни мерни единици за пейджинг, разширен сортиране и супер филтър,
  • Още Избор / Вмъкване / Изтриване / Текст / Форматиране / Връзка / Коментар / Работни книги / Работни листове Инструменти ...

Изстрел на екрана на Kutools за Excel

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.
    Max · 9 months ago
    Omg thank you so very much dude!
  • To post as a guest, your comment is unpublished.
    prasanna · 1 years ago
    Hi Thanks for this great code, but the concern is, here we can only split fixed number of rows, can you help me with split is based on some name or code, because i have different set of rows for each worksheet.
  • To post as a guest, your comment is unpublished.
    aparna · 2 years ago
    hi this works great but want the output as string how can i modify the code or i can say example : 'output',
  • To post as a guest, your comment is unpublished.
    Ralph · 2 years ago
    Thanks a lot for the fantastic VBA-Script. But how to modify it to keep the header row on every split?
  • To post as a guest, your comment is unpublished.
    Ralph · 2 years ago
    Thanks, for this fantastic VBA-Script. But how to configure it to repeat the header row on every split?