Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft Office Новый топик    Ответить
 Как разбить один лист 23000 строк на много листов(файлов) по 200 строк в каждом  [new]
Дениссимо
Member

Откуда:
Сообщений: 10
Народ всем привет)

Если кто обладает знаниями и свободным временем просьба помочь)

Задача сугубо прикладная - есть большой файл Excel (97-2003 ) всего в нем строк 23000 и 4 колонки....нужно разбить эту каланчу на выборочное число строк, положим по 200 строк задаешь
и получаешь кучу файлов (на худой конец листов в этом файле). Информация однородна.

Ниже пример итогового файла

К сообщению приложен файл (1.xls - 73Kb) cкачать
6 авг 09, 13:46    [7505683]     Ответить | Цитировать Сообщить модератору
 Re: Как разбить один лист 23000 строк на много листов(файлов) по 200 строк в каждом  [new]
big-duke
Member

Откуда:
Сообщений: 6717
Дениссимо,

что типа
for i=1 to EndRow Step 200
Range("A" & i & ":A" & i+200).copy
worksheets.add
..paste
next
6 авг 09, 14:00    [7505830]     Ответить | Цитировать Сообщить модератору
 Re: Как разбить один лист 23000 строк на много листов(файлов) по 200 строк в каждом  [new]
Дениссимо
Member

Откуда:
Сообщений: 10
Сорь за тупой вопрос) я просто вообще близко с программингом не стоял

где этот модуль запустить?
6 авг 09, 14:04    [7505864]     Ответить | Цитировать Сообщить модератору
 Re: Как разбить один лист 23000 строк на много листов(файлов) по 200 строк в каждом  [new]
Дениссимо
Member

Откуда:
Сообщений: 10
Подскажите пожалуйста, добрые люди)
6 авг 09, 16:55    [7507188]     Ответить | Цитировать Сообщить модератору
 Re: Как разбить один лист 23000 строк на много листов(файлов) по 200 строк в каждом  [new]
big-duke
Member

Откуда:
Сообщений: 6717
Дениссимо,

вы приаттачьте полный файл, а то лень генерить 23000 строк.
6 авг 09, 21:12    [7508148]     Ответить | Цитировать Сообщить модератору
 Re: Как разбить один лист 23000 строк на много листов(файлов) по 200 строк в каждом  [new]
Дениссимо
Member

Откуда:
Сообщений: 10
big-duke, файлик целиком весит почти 2 Мб, а здесь ограничение по прикреплению файлом на 100 кб
7 авг 09, 10:59    [7509562]     Ответить | Цитировать Сообщить модератору
 Re: Как разбить один лист 23000 строк на много листов(файлов) по 200 строк в каждом  [new]
big-duke
Member

Откуда:
Сообщений: 6717
Дениссимо,

ну заархивируйте его, и киньте на какой-нить файлообменник, типа www.filetut.ru.
7 авг 09, 11:27    [7509766]     Ответить | Цитировать Сообщить модератору
 Re: Как разбить один лист 23000 строк на много листов(файлов) по 200 строк в каждом  [new]
Дениссимо
Member

Откуда:
Сообщений: 10
Вот ссылка на файл:

http://www.ut99.ru/kompel.rar
7 авг 09, 16:09    [7511903]     Ответить | Цитировать Сообщить модератору
 Re: Как разбить один лист 23000 строк на много листов(файлов) по 200 строк в каждом  [new]
Дениссимо
Member

Откуда:
Сообщений: 10
Жду дальнейшей помощи)
10 авг 09, 12:49    [7517029]     Ответить | Цитировать Сообщить модератору
 Re: Как разбить один лист 23000 строк на много листов(файлов) по 200 строк в каждом  [new]
Deggasad
Member

Откуда: Воронеж
Сообщений: 3490
big-duke
Дениссимо,

вы приаттачьте полный файл, а то лень генерить 23000 строк.


Сделай на примере каждые 2 строки, а потом только два нуля останется дописать, зачем же генерить 23000 строк, можно 230 обойтись.
10 авг 09, 15:13    [7517999]     Ответить | Цитировать Сообщить модератору
 Re: Как разбить один лист 23000 строк на много листов(файлов) по 200 строк в каждом  [new]
PlanB
Member

Откуда: Moscow
Сообщений: 2738
Дениссимо
Жду дальнейшей помощи)
за 4 дня можно было и руками управиться...
10 авг 09, 16:05    [7518381]     Ответить | Цитировать Сообщить модератору
 Re: Как разбить один лист 23000 строк на много листов(файлов) по 200 строк в каждом  [new]
Дениссимо
Member

Откуда:
Сообщений: 10
Ребят так и управляемся в офисе каждую неделю ручками) помогите с циклом разобраться..
17 авг 09, 13:30    [7546088]     Ответить | Цитировать Сообщить модератору
 Re: Как разбить один лист 23000 строк на много листов(файлов) по 200 строк в каждом  [new]
СамБамбук
Guest
вот готовый код ... генерит файлы в ТОТ же каталог, где расположен основной файл.
открываешь свой файл, по ярлыку листа ПКМ - ИСХОДНЫЙ ТЕКСТ и вставить туду этот код

Sub wer()

n = ActiveWorkbook.Name

k = ActiveWorkbook.Path & "\"

Application.ScreenUpdating = False

Range("A65536").Select
EndRow = Selection.End(xlUp).Row

For i = 1 To EndRow Step 200
Range("A" & i & ":D" & i + 199).Copy
Workbooks.Add
ActiveSheet.Paste
Range("A").Select
ActiveWorkbook.SaveAs k & i & "-" & i + 199
ActiveWorkbook.Close
Windows(n).Activate
Next

End Sub
17 авг 09, 14:25    [7546509]     Ответить | Цитировать Сообщить модератору
 Re: Как разбить один лист 23000 строк на много листов(файлов) по 200 строк в каждом  [new]
Дениссимо
Member

Откуда:
Сообщений: 10
СамБамбук,

Вроде начинает разбивать, создает первую книгу - потом идет run-time error 1004. Х.з. почему..
19 авг 09, 15:35    [7557176]     Ответить | Цитировать Сообщить модератору
 Re: Как разбить один лист 23000 строк на много листов(файлов) по 200 строк в каждом  [new]
СамБамбук
Guest
эт я поторопился ...

открываешь свой файл, Alt+F11, открывается VBA-редактор, ПКМ на названии файла в окне Project -Insert-Module и вставить туду этот код
19 авг 09, 16:45    [7557731]     Ответить | Цитировать Сообщить модератору
 Re: Как разбить один лист 23000 строк на много листов(файлов) по 200 строк в каждом  [new]
Дениссимо
Member

Откуда:
Сообщений: 10
Теперь Run Time Error 1004, Method Range of object _ Global failed... хз короче
21 авг 09, 18:26    [7568696]     Ответить | Цитировать Сообщить модератору
 Re: Как разбить один лист 23000 строк на много листов(файлов) по 200 строк в каждом  [new]
СамБамбук
Guest
Sub wer()

n = ActiveWorkbook.Name

k = ActiveWorkbook.Path & "\"

Application.ScreenUpdating = False

Range("A65536").Select
EndRow = Selection.End(xlUp).Row

For i = 1 To EndRow Step 200
Range("A" & i & ":D" & i + 199).Copy
Workbooks.Add
ActiveSheet.Paste
Range("A1").Select 'исправлено
ActiveWorkbook.SaveAs k & i & "-" & i + 199
ActiveWorkbook.Close
Windows(n).Activate
Next

End Sub
22 авг 09, 00:07    [7569220]     Ответить | Цитировать Сообщить модератору
 Re: Как разбить один лист 23000 строк на много листов(файлов) по 200 строк в каждом  [new]
Дениссимо
Member

Откуда:
Сообщений: 10
СамБамбук, урааааааа!!! Спасибо Огромное)) Даже не представляешь как ты выручил. Готов поставить пиво или символически пожертвовать куда нить вебмани..Короче СУПЕР!
24 авг 09, 14:54    [7573349]     Ответить | Цитировать Сообщить модератору
 Re: Как разбить один лист 23000 строк на много листов(файлов) по 200 строк в каждом  [new]
Napaulm
Member

Откуда:
Сообщений: 4
Здравстуйте, может кто скажет как разбить один файл в котором допустим 10 листов, соответственно в одном файле должно получится по одному листу. И еще как автоматом задать название получаемых файлов например "текущая дата" и положить каждый файлик в определенную папку.
27 окт 09, 07:23    [7841795]     Ответить | Цитировать Сообщить модератору
 Re: Как разбить один лист 23000 строк на много листов(файлов) по 200 строк в каждом  [new]
Hugo121
Member

Откуда: Рига
Сообщений: 1549
как автоматом задать название получаемых файлов например "текущая дата"

stXLGetPath = CurrentProject.Path & "\" 'если надо, можно и ручками прописать ниже в коде
strDate = Format(Now, "yyyy.mm.dd-hh.mm.ss")
xls.SaveAs FileName:= _
        stXLGetPath & "Постоянноеназваниефайла." & "." & strDate & ".xls", _
        FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
        ReadOnlyRecommended:=False, CreateBackup:=False
27 окт 09, 09:38    [7842099]     Ответить | Цитировать Сообщить модератору
Между сообщениями интервал более 1 года.
 Re: Как разбить один лист 23000 строк на много листов(файлов) по 200 строк в каждом  [new]
topotk
Member

Откуда:
Сообщений: 1
СамБамбук,
Добрый день)) Были бы вы так добры помочь и мне?))
знаний, чтоб адаптировать код под мою, почти такую же задачу, нет, а необходимость каждый день дробить таблицы на отдельные файлы ближайшие полгода - есть))
Хелп! Пожалуйста))
Задача: таблицу в эксель из 214 строк разбить на отдельные файлы (или хотя бы листы в книге) на 214 штук. То есть каждая строка должна стать отдельным файлом (или листом независимо от содержимого.
Заранее спасибо))
24 авг 18, 13:22    [21653058]     Ответить | Цитировать Сообщить модератору
 Re: Как разбить один лист 23000 строк на много листов(файлов) по 200 строк в каждом  [new]
iMrTidy
Member

Откуда:
Сообщений: 773
topotk,

9 лет прошло, однако... Рискну предположить, что СамБамбук вряд ли найдется.
24 авг 18, 23:00    [21653574]     Ответить | Цитировать Сообщить модератору
 Re: Как разбить один лист 23000 строк на много листов(файлов) по 200 строк в каждом  [new]
alecko
Member

Откуда: Башкирия
Сообщений: 561
topotk,
код такой же практически
+
Sub wer()
dim n$, k$, i&
n = ActiveWorkbook.Name

k = ActiveWorkbook.Path & "\"

Application.ScreenUpdating = False

Range("A65536").Select
EndRow = Selection.End(xlUp).Row

For i = 1 To EndRow
ActiveSheet.Rows(i).Select
Selection.Copy
Workbooks.Add
ActiveSheet.Paste
Range("A").Select
ActiveWorkbook.SaveAs k & i 
ActiveWorkbook.Close
Windows(n).Activate
Next

End Sub
25 авг 18, 13:28    [21653815]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft Office Ответить