![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы
![]() |
Поиск в этой теме
![]() |
![]() |
#1 |
Форумчанин
Регистрация: 17.03.2009
Сообщений: 226
|
![]()
Всем здравствуйте!
Прошу помощи, нужен макрос который смог бы сделать следующее: существует большая таблица (более 20 тыс. строк), состоит она из блоков примерно по 300 строк. Необходимо, указав количество строк, разбить эту таблицу на n-ое кол-во листов. Т.е берутся первые 300 строк (или другое количество которое я укажу), копируются и вставляются значениями в лист 2, далее берутся следующие 300 строк (по порядку) и копируются в лист 3 и т.д. пока не закончатся данные в первоначальной таблице. Думаю пример здесь не нужен... Заранее спасибо! |
![]() |
![]() |
![]() |
#2 |
Форумчанин
Регистрация: 29.10.2008
Сообщений: 294
|
![]() Код:
Последний раз редактировалось Maxx; 18.03.2010 в 17:28. |
![]() |
![]() |
![]() |
#3 |
Форумчанин
Регистрация: 17.03.2009
Сообщений: 226
|
![]()
Сделал как сказано.
Ругается "run-time error 9 subscript out of range". |
![]() |
![]() |
![]() |
#4 |
Старожил
Регистрация: 05.12.2007
Сообщений: 4,180
|
![]()
С позволения Maxx, код можно немного упростить, используя Step:
Код:
Чем шире угол зрения, тем он тупее.
|
![]() |
![]() |
![]() |
#5 |
Форумчанин
Регистрация: 17.03.2009
Сообщений: 226
|
![]()
Понял почему не работало - исходный лист был назван не как "Лист1", поправил теперь все работает.
Спасибо большое! |
![]() |
![]() |
![]() |
#6 |
Форумчанин
Регистрация: 17.03.2009
Сообщений: 226
|
![]()
To SAS888, ваш макрос работает как раз с любым названием листа.
Спасибо. |
![]() |
![]() |
![]() |
#7 |
Форумчанин
Регистрация: 17.03.2009
Сообщений: 226
|
![]()
To SAS888, правда копируются почему то не все столбцы..
![]() |
![]() |
![]() |
![]() |
#8 |
Форумчанин
Регистрация: 17.03.2009
Сообщений: 226
|
![]()
Подскажите, пожалуйста, еще: нужно чтобы название листа присваивалось беря значение столбца U. Т.е. копируется блок с 220 по 440 строку, его название содержится в ячейке U220.
|
![]() |
![]() |
![]() |
#9 | ||
Старожил
Регистрация: 05.12.2007
Сообщений: 4,180
|
![]() Цитата:
Цитата:
Код:
Также, не проверяется правильность ввода исходных данных (номер 1-й строки и количество строк в блоке). Если нужно, добавьте такую проверку самостоятельно.
Чем шире угол зрения, тем он тупее.
|
||
![]() |
![]() |
![]() |
#10 |
Форумчанин
Регистрация: 17.03.2009
Сообщений: 226
|
![]()
Спасибо. Дополнительные условия не требуются, всё работает.
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
добавление данных через DBEdit в разные таблицы | Kamelli | БД в Delphi | 6 | 31.07.2013 00:58 |
Сегментация. Слияние-дробление | voronchak | Win Api | 0 | 26.02.2010 12:11 |
Листы | ROBERT033 | Microsoft Office Excel | 10 | 04.02.2010 12:28 |
OpenGL и листы | Пепел Феникса | Gamedev - cоздание игр: Unity, OpenGL, DirectX | 5 | 14.11.2009 12:21 |
Разнести информацию на разные листы | asale | Microsoft Office Excel | 3 | 13.06.2007 20:16 |