Форум по VBA, Excel и Word

VBA, Excel => Работа в программе "Excel" => Тема начата: Данила от 04 мая 2018, 14:20

Название: Excel: Сравнение значений в разных листах книги с подстановкой новых в основную таблицу и удалением из нее отсутствующих по листам
Отправлено: Данила от 04 мая 2018, 14:20
Есть лист "Список сотрудников" и есть 12 листов по месяцам.

Необходимо "Список сотрудников" сравнить с уже имеющимися фамилиями по 4 месяцам и при наличии фамилий построчно во всех этих листах в основную таблицу ничего не вносить, при отсутствии какой-либо фамилии в них (человек уволился) удалять из основного списка, при наличии в списках по месяцам какой-то новой фамилии (человек принят на работу), отсутствующей в "Списке сотрудников", добавить её в "Список сотрудников" (высший пилотаж - сортировка по алфавиту после добавления, но без макроса, если так невозможно, то буду сортировать вручную, не обломлюсь))).

Необходимо учитывать еще тот факт, что при окончании очередного месяца в соответствующий лист по месяцам будет добавлен новый список и возможно в нем будут изменения по сотрудникам. Так вот, чтобы пр добавлении данных в новый месяц, в сравнение подключался и он. Все таблицы не одинаковы по строкам (так как там может быть как и больше сотрудников, чем в основном списке, так и меньше).

Забыл еще добавить, что при добавлении новой фамилии в основной список вносились также данные из второго столбца "Должность" при добавлении нового сотрудника в новом месяце таблицы, должность также будет вноситься вручную.

[вложение удалено администратором]
Название: Re: Excel: Сравнение значений в разных листах книги с подстановкой новых в основную таблицу и удалением из нее отсутствующих по листам
Отправлено: Администратор от 04 мая 2018, 22:07
1. Power Query считается стандартным средством для вас? Начиная с Excel 2016 Power Query есть на вкладке Данные, поэтому Power Query является частью экселя, начиная с Excel 2016.

2. Чем макросы вам не подходят? Для некоторых задач формулы не подходят, т.к. тормозят работу файла.
Название: Re: Excel: Сравнение значений в разных листах книги с подстановкой новых в основную таблицу и удалением из нее отсутствующих по листам
Отправлено: Данила от 05 мая 2018, 01:58
1) Насчёт Power Query - я лично использую версию 2016 года с этой встроенной надстройкой. Но большинство в офисе, использующие эти данные для анализа, пользуются более старыми версиями. По этому я и делал для всех каждый месяц анализ вручную и потом отсылал. Но притомил меня этот процесс, так как он не единственный и хотелось бы начать уходить от рутины. А вот как от нее уйти, чтобы другие смогли полноценно пользоваться - это большой вопрос, так как многие тупят в эксель и у всех стоят разные года и разные версии.

2) Макросы при существующей политики безопасности компании попросту не запустятся. Если Вам будет несложно, то можно выложить в двух версиях - одну с макросами, где это необходимо для быстродействия и вторую без них. Тогда я могу продемонстрировать работу этих файлов с обоснованием службе безопасности пропуска макросов хотя бы для моих файлов эксель, ввиду их необходимости.
Название: Re: Excel: Сравнение значений в разных листах книги с подстановкой новых в основную таблицу и удалением из нее отсутствующих по листам
Отправлено: Администратор от 05 мая 2018, 18:39
Решение с использованием Power Query.
Как это сделано, много описывать.

В этом способе запрос использует все умные таблицы, кроме одной.

Обновить данные можно так: поставьте курсор-рамку на листе "Список сотрудников" внутрь умной таблицы - вкладка "Данные" -  стрелка кнопки "Обновить все" - Обновить.

[вложение удалено администратором]
Название: Re: Excel: Сравнение значений в разных листах книги с подстановкой новых в основную таблицу и удалением из нее отсутствующих по листам
Отправлено: Данила от 06 мая 2018, 09:59
спасибо, попробую применить ваше решение