Страницы: 1
RSS
Объединение книг в одну с объединением данных по соответствующим листам, MS Excel 2010
 
Есть несколько книг, в каждой книге по N листов (но некоторые могут быть скрыты либо удалены). Названия листов в каждой из книг совпадают, однако в разрезе одной книги обладают уникальными именами. Примеры книг - вложение Данные.zip.

На выходе хочется получить следующее:
Собрать данные из всех книг в одну с N листами. Сбор данных происходит из закрытых книг, находящихся в одной папке.
Листы объединить поименно. Данные листов отображать друг под другом (желательно с исключением повтора шапки).
Имена листов в новой книге должны соответствовать исходным именам листов книг.

Пробовала делать с макросом объединения данных по листам из нескольких книг (вложение Макрос 1_Объединение по листам из неск.книг.txt). Но он объединяет по одному листу с указанным именем. Т.е. на выходе у меня получилось N файлов, соответствующих листам. Затем использовала макрос, объединяющий несколько книг в одну с N листами, соответствующими N книгам (вложение Макрос 2_Объединение неск.книг в одну.txt). И всё бы хорошо, но файлов таких будет очень много и по мере поступления их надо постоянно объединять.
 
Цитата
Ollala пишет:
файлов таких будет очень много и по мере поступления их надо постоянно объединять.
Для макроса это не должно быть критичным: он "сам" должен прочесть все файлы из каталога, независимо от их количества.
Цитата
Ollala пишет:
Листы объединить поименно.
Возможно ли иметь общий список имен листов?
Макрос должен работать с ним в "гибком" варианте (список может расширяться / сокращаться): макрос должен строить объединенный файл по любому заказанному списку листов.
Например, отдельно "Обувь" или "Одежда", либо "Обувь" и"Одежда" вместе, либо любой другой вариант, в зависимости от информации в списке имен листов.
 
Возможно. Составить список с именами листов не проблема.
 
Тогда проблем - никаких.
Да, еще момент...
На одноименных листах горизонтальная структура одинакова?
 
Да, число столбцов и их имена повторяются для каждого файла.
 
Если устроит, макрос выложу через 4-5 часов: после окончания вечерних домашних форс-мажоров - без них ни жить, ни быть. :D
Может быть, кто-нибудь раньше накропает...
 
Охх..форс-мажоры они такие :) Всё устроит. Спасибо!
 
Лишних файлов в папке не должно быть.
Скрытый текст
Изменено: KuklP - 31.07.2013 21:32:28
Я сам - дурнее всякого примера! ...
 
Вариант...
Изменено: Мотя - 01.08.2013 16:02:26
 
Цитата
Мотя пишет: Вариант...
Собирает по листам, как и нужно, но почему-то не все данные  :(  и пока не удалила скрытые листы выдавал ошибку "Run-time error '1004' метод Select из класса Worksheet завершен неверно".
 
О скрытых листах забыла...  ;)
Имеет смыл исправить макрос или Вы возьмете вариант, предложенный KuklP?
KuklP - профессионал, а я - "любитель" EXCEL. :D
Изменено: Мотя - 01.08.2013 14:14:34
 
Цитата
Мотя пишет:
KuklP - профессионал, а я - "любитель" EXCEL.
KuklP - сварщик профессионал. И к Эксу не имеет никакого отношения. :)
Я сам - дурнее всякого примера! ...
 
Цитата
KuklP пишет:
И к Эксу не имеет никакого отношения.
Все мы, непременно, в чем-то обязательно являемся настоящими профессионалами.
Без этого - жизнь не интересна.  ;)  
В "Эксе", даже, если мы и  "любители": уровень у нас, у ВСЕХ, разный.  :D
Изменено: Мотя - 01.08.2013 14:46:27
 
Ollala!
Если пригодится мой опус:
1. все листы в склад-файлах делаю Visible = True,
2. в сводных файлах в столбе "ФАЙЛ" указываю имя склад-файла (для удобства визуального контроля).
Изменено: Мотя - 01.08.2013 16:02:11
 
Скрытые увидил, но проблема та же, что и с макросом KuklP. Собирает не все данные. Буду копаться искать выход какой-то. Спасибо!

KuklP, спасибо! Вроде делает всё красиво, но опять-таки, обрабатывает не все данные листов. Возможно, это проблема в самих данных, но поскольку их очень и очень много, то разбираться нет ни времени, ни сил. Скорее всего буду запускать Ваш макрос и плюс ещё какую-то проверку на то, что не подтянулось. Радует хотя бы, что не по каждому листу отдельно надо собирать  :)
 
Цитата
Ollala пишет:
Скорее всего буду запускать Ваш макрос
Засим, я свой удаляю.
 
Цитата
Ollala пишет:
Собирает не все данные.
У Вас, скорее всего, в информации склад-файлов попадаются пустые строки...
 
Ну во-первых - в Вашем примере не было скрытых листов. Во-вторых:
Цитата
Ollala пишет:
обрабатывает не все данные листов
за ~18 часов можно было бы и уточнить, какие именно данные макрос не обрабатывает. Ollala, Вы были на форуме, когда я вчера еще(!) выложил свое решение, но ни намеком не отреагировали до недавнего времени. Я уж себя почувствовал невидимкой. Ну, пусть так и будет. Удачи.
Я сам - дурнее всякого примера! ...
 
Цитата
KuklP пишет: в Вашем примере не было скрытых листов.
Про скрытые листы я предупредила сразу.
Цитата
в каждой книге по N листов (но некоторые могут быть скрыты либо удалены).

Цитата
KuklP пишет: Во-вторых: за ~18 часов можно было бы и уточнить, какие именно данные макрос не обрабатывает.
Файл со складами - пример. Оригинал файла выслать я не могу - политика безопасности компании. Какие именно данные не обрабатываются...в каждом файле по 13 листов с числом столбцов от 25 до 38. Я проверяю по общему количеству данных и отследить какие именно не попали...увы!

Цитата
KuklP пишет: Вы ... ни намеком не отреагировали до недавнего времени.
А реагировать, не проверив как отработало с необходимыми мне данными, извините, я не могу. Отписалась как только выяснила. И обиды Ваши мне непонятны. А за то, что откликнулись и попытались помочь, я поблагодарила.
 
Если в в сводных файлах в столбе "ФАЙЛ" (при использовании "гибкой" структуры "шапок" в списке имен листов) макрос будет указывать имя склад-файла, то "штатным" EXCEL (данные - сортировка - итоги) в макросе можно построить промежуточные итоги по складам в каждом сводном файле.
Номенкл.номер Наименование Принадлежность Материал Цвет Размер Группа товаров ФАЙЛ
Номенкл.номер Наименование Принадлежность Сезон Материал Цвет Размер Группа товаров ФАЙЛ
Номенкл.номер Наименование Цвет Функциональное назначение Группа товаров ФАЙЛ

Это позволит освободиться от фильтров, "рукопашного" использования "штатного" EXCEL (данные - сортировка - итоги)...
Изменено: Мотя - 01.08.2013 17:19:03
Страницы: 1
Читают тему
Наверх