Страницы: 1
RSS
Данные из таблиц на листах - в единую динамическую таблицу на итоговом листе, Помогите, пожалуйста, найти и воплотить решение
 
Добрый день.

Уважаемые специалисты, помогите, пожалуйста, выбрать стратегию и найти решение проблемы.
Есть книга Excel, в ней листы, каждый из которых заполнен таблицей со списком одного из отделов трудового коллектива. Можно охарактеризовать такой лист как журнал успеваемости отдела, в строках которого напротив ФИО выставлены определённые достижения и производятся вычисления всяческих баллов и т.п.
Набор столбцов на всех листах един. А вот в наборе строк могут быть вариации: кроме перечисления персон и их характеристик и параметров могут быть строки с названий подразделений отдела и пр. Ну, и, конечно, количество сотрудников варьируется от листа к листу.
Вопрос: как свести всех сотрудников отделов со всеми их характеристиками со всех листов на один лист так, чтобы список получился непрерывным, а в отдельном столбце этого итогового листа значилось бы название отдела сотрудника (то бишь, название листа, из которого взят сотрудник)?
Идеально было бы, конечно, если бы всё это было динамически связано, то бишь добавление, удаление и изменение данных в листах отделов тут же отображались в общем листе.

P.S. Думал, помогут именованные диапазоны, но после вставки этих диапазонов в новый лист и последующего удаления сотрудников из листа отдела появляются строки, заполненные "#Н/Д".
 
Доброе вермя суток.
Цитата
Python написал: выбрать стратегию и найти решение проблемы.
Первоначальная стратегия, структурировать в плоские таблицы. Тогда можно данные собирать, например, запросом SQL для размышления. Если таблицы только в таком виде, то макросом для изучения.. Можно и через Power Query.
Дерзайте.
 
Python, а что за штаны в таблицах? ))
 
Цитата
Юрий М написал: что за штаны
Без этого пока никак в нашем несовершенном обществе ))
Скрытый текст
 
Если штаны в результате не нужны - зачем Вы показываете их в исходных данных?
 
См. вариант.
 
Юрий М,
штаны я показываю как пример возможных неоднородностей структуры таблицы.
Спасибо за вариант. Принялся изучать макрос.
 
Поменял файл - теперь код с комментариями.
 
Цитата
Юрий М написал:
код с комментариями
Комментарии значительно ускорили понимание мало знакомого мне VBA :) Спасибо за помощь!
Возможно ли сохранять оформление ячеек итогового листа (цвет ячеек, гарнитура шрифта и пр.) так, чтобы при каждом запуске макроса всё это не сбрасывалось? Или придётся каждый раз форматировать таблицу?
 
Цитата
Python написал:
Возможно ли сохранять оформление ячеек итогового листа
Возможно, но это значительно снизит скорость обработки. Нужно? )
 
Цитата
Юрий М написал:
Нужно? )
Хорошо бы :) Это сильно увеличит размер кода?
 
Размер даже уменьшится ))
Столбец с наименованием подразделений будет с форматом по умолчанию - негде брать образец формата.
 
Юрий М,
я, видимо, неверно донёс мысль ) Я хотел спросить, можно ли один единственный раз вручную оформить итоговый лист цветами и шрифтами, чтобы после "Бымц!" всё это сохранялось и применялось к вставленным данным. Или тогда надо будет городить программно цвета и шрифты всем вставленным данным?
Хотя... Можно же ведь и начальные таблицы заранее раскрасить и назначить необходимые шрифты )
 
Можно: для первого файла - найдите в коде строку:
Код
Range(Cells(2, 1), Cells(LastRow + 1, 10)).Clear 

и поменяйте на такую:
Код
Range(Cells(2, 1), Cells(LastRow + 1, 10)).ClearContents 
 
Юрий М,
ОК, спасибо, сейчас сделаем )

update:
Да, всё отлично, работает! Спасибо!
Изменено: Python - 20.02.2017 16:25:44
Страницы: 1
Наверх