Разделите файл Excel на более мелкие файлы по 5000 строк в каждом, не разбивая строки - PullRequest
0 голосов
/ 07 мая 2019

Мне нужно разделить лист Excel с 60000+ строками на разные файлы по 5000 строк в каждом.Вставленные данные сгруппированы, и мне нужны новые таблицы, чтобы не разбивать эти группы, но я не могу ни сделать это, ни создать новый файл каждый раз.

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

Public Sub split()
Dim sheetnumber, t As Double
line = 0
k = lastrow 'this gives the last full row in the file

sheetnumber = WorksheetFunction.RoundUp(k / 5000, 1)

For i = 1 To sheetnumber Step 1

line = line + 5000

article = CStr(Sheets("sheet1").Cells(linea, 1).Value)
For m = 0 To 30 Step 1
    If article = CStr(Sheets("sheet1").Cells(linea + m, 1).Value) Then
    GoTo e
    Else
    line = line + m
    Exit For
    End If
e:

Next m
Sheets.Add After:=ActiveSheet
For n = 1 To line Step 1
   ActiveSheet.Row(n) = Sheets("sheet1").Row(n) ' i also tried to put a cycle here to 
'copy the whole row and then go to the next one but the rest won't work
Next n

ActiveSheet.Select
ActiveSheet.Move


Next i

End Sub

Файл составлен так:

статья 0 статья 1 статья 1 статья 1 статья 2 статья 2 статья 3

...

артикул 56 артикул 57 артикул 57 артикул 57 артикул 57 артикул 58

Мне нужно, чтобы новые файлы включали целые строки от 5002 до 1, а другой файл включал бы все строки от 10003 до 5002 и т. Д. До конца файла (последняя строка около 60000), без разбивкигруппа статей.

Спасибо за любые предложения / помощь в этом

...