Як побудувати зведену таблицю за кількома масивів (листам)

Типова задача при обробці інформації отриманої з різних джерел. Типове рішення - взяти і звести всі таблиці в одну. Але що робити, коли таблиць багато (наприклад, 20), або звести їх в одну немає можливості, на аркуші просто не вистачає рядків (всі таблиці в сумі дають більше 1 100 000 рядків)?

Однак рішення існує! І воно не дуже складне.

Для вирішення цього завдання нам знадобитися надбудова YOXCEL.

Отже, приступимо до вирішення. Ми маємо на вході 3 таблиці, розташовані на різних аркушах робочої книги:

Як побудувати зведену таблицю за кількома масивів (листам)

  • Кількість стовпців у всіх таблицях має бути однаково;
  • Крім таблиць на аркушах не повинно бути ніякої інформації.

Починаємо маніпуляції. Переходимо в головному меню у вкладку YOXCEL і натискаємо кнопку "Таблиці", у випадаючому меню вибираємо команду "Об'єднати таблиці":

Як побудувати зведену таблицю за кількома масивів (листам)

У діалоговому вікні виділяємо листи з таблицями, які необхідно об'єднати і натискаємо "ОК":

Як побудувати зведену таблицю за кількома масивів (листам)

Програма сформує запит - об'єднає таблиці і виведе інформаційне повідомлення:

Як побудувати зведену таблицю за кількома масивів (листам)

Залишилось зовсім небагато. Переходимо в головному меню у вкладку "Дані" в розділі "Отримання зовнішніх даних" натискаємо кнопку "Існуючі підключення":

Як побудувати зведену таблицю за кількома масивів (листам)

У діалоговому вікні вибираємо "Підключення в цій книзі" - "Запит з Excel Files" і натискаємо "Відкрити":

Як побудувати зведену таблицю за кількома масивів (листам)

У діалоговому вікні встановлюємо перемикачі в положення "Звіт зведеної таблиці" і "Новий лист", натискаємо "ОК":

Як побудувати зведену таблицю за кількома масивів (листам)

Програма створить в книзі новий лист на який виведе макет зведеної таблиці. Зверніть увагу - програма створить в сформованої таблиці новий стовпець з назвами листів з яких були отримані дані:

Як побудувати зведену таблицю за кількома масивів (листам)

Добудуйте зведену таблицю до необхідного стану, додайте в будь-яку з пов'язаних таблиць нову сходинку, поновіть зведену таблицю - в ній з'являться додані дані.

Щоб оновлення зведеної таблиці відбувалося автоматично вставте в модуль кожного листа містить таблиці наступний код (Як вставляти макроси?):

  • Якщо ви перемістили файл в іншу папку або відправили файл колезі по електронній пошті - необхідно заново зв'язати таблиці (в запиті прописується абсолютний шлях до файлу).

Щоб запит працював не залежно від того в якій папці лежить файл вставте в модуль "ЕтаКніга" наступний код:

Даний макрос при відкритті книги буде визначати поточний шлях до файлу та змінювати шлях до файлу в запиті.

Файли для скачування:

Щоб оцінити всю красу - вийміть файл з архіву і при завантаженні файлу включите макроси.

Можливі помилки при використанні цього методу:

  • У таблицях однакову кількість стовпців, але при спробі використовувати запит отримуємо повідомлення: "У таблицях або запитах, обраних в запиті на об'єднання, не збігається число стовпців." Причина: в одному або декількох аркушах з таблицями є порожні стовпці (в них раніше були дані) і MS Excel вважає їх стовпцями таблиць. Рішення: Виділити і видалити всі порожні стовпці на аркушах з таблицями.
  • Всі стовпчики видалили, але помилка залишилася. Причина: файл збережений на мережевому диску або відкритий з поштової програми. Рішення: збережіть файл у себе на локальному комп'ютері, виконайте запит, вставте в нього макрос який змінює шлях в запиті і викладіть назад в мережу (якщо потрібно).
  • В отриманому запиті в деяких осередках пропадають дані. Причина: в ваших таблицях зустрічаються стовпці, які одночасно містяться і числові і текстові значення. MS Excel вважає, що ці стовпці повинні містити тільки числа і не виводить текст. Рішення: перетворіть всі числові значення в цих стовпцях у всіх таблицях в текстові. Оновлення запит - текстові дані з'являться.

Привіт, вставила в книгу Ваші коди макросів для відновлення зведеної таблиці, і у мене виникли проблеми. Перша: таблиця не оновлювалася (через що, не знаю). Я додала зайву рядок для перевірки в вихідну таблицю, але в зведеної вона не відобразилася, тому я залізла в параметри Excel і включила надбудову "VBA для помічника по Інтернету" (випадково, звичайно, і не знаю, як її відключити).
І ось тоді виникла друга проблема. Тепер таблиця оновлюється при кожній дії в даній книзі (фільтр по даті, видалення, вставка рядків, стовпців, комірок і т.д.) Зараз це займає всього 2-3 хвилини, але боюся в майбутньому це буде відбуватися довше через збільшення обсягу даних. Можете допомогти?