Power Query - Імпортуйте дані з поточної книги

power

Ми бачили, як імпортувати зовнішні дані з одного файлу, як імпортувати всі файли в папці та як імпортувати дані з таблиці/іменованого діапазону в тій самій книзі. Але що, якщо ми хочемо імпортувати ВСІ дані в одній книзі? Ну, ось куди ми прямуємо в цій публікації.

Якщо існує одна найкраща практика Excel, яку користувачі весь час ігнорують, це все - зберігайте дані одного типу на одній вкладці. Як ви побачите в наших прикладних файлах, січень, лютий та березень - це однакові дані в одній структурі, тому вони дійсно повинні бути в одній таблиці на одній вкладці. Більшість початківців користувачів Excel не думають так, тому є велика ймовірність, що ви зіткнетеся з подібними типами книг, і вам колись доведеться використовувати цей прийом.

Завантажте прикладний файл

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

Приклади в цій публікації використовують Приклад 11 - Імпорт із поточної книги. Xlsx файл.

Імпортувати таблиці з поточної книги

Відкрийте Приклад 11 - Імпорт із поточного файлу Workbook.xlsx. Далі ми збираємося створити за допомогою порожнього запиту, клацнувши Дані -> Отримати дані -> З інших джерел -> Пустий запит

Відкриється редактор Power Query. У вікні Застосовані кроки є один крок, у вікні Попередній перегляд нічого немає, і більшість перетворень є неактивними. Хоча вікно Застосовані кроки відображає джерело як крок, на даний момент на цьому кроці насправді немає нічого. Це справді пустий запит.

Ми збираємося написати код M, щоб дати Power Query джерелом.

Якщо використовується рядок формул, ми можемо ввести наступне (клацніть Перегляд -> Панель формул якщо рядок формул не видно).

Або якщо ви використовуєте розширений редактор (Домашня сторінка -> Розширений редактор) ми можемо мати наступне:

Пам’ятайте, код M чутливий до регістру, тому вам потрібно буде ввести текст точно так, як показано вище.

У вікні попереднього перегляду таблиці відображатимуться на аркуші.

Клацніть на Розгорнути значок детально вивчити структуру робочої книги. Зніміть прапорець Використовуйте оригінальну назву стовпця як префікс, потім натисніть в порядку.

Вікно попереднього перегляду тепер відображає об’єднані дані.

Заповніть запит наступними перетвореннями:

  • Видаліть стовпець Ім'я
  • Змініть тип даних для кожного стовпця
  • Дайте запиту відповідне ім’я (я вибрав CombinedTable).

Клацніть Закрити та завантажити щоб перенести дані на новий аркуш. Ви ще цього не знаєте, але у вас є проблема, я вам покажу.

На панелі Запити та підключення показано 151 завантажений рядок.

Внесіть зміни до таблиць січня, лютого чи березня та натисніть Дані -> Оновити все.

Помилка ... що щойно сталося. Зараз у нас 301 рядок, але ми більше не додали жодних рядків.

Якщо ми знову оновимо дані, у нас буде 451 рядок.

Повернімося до Power Query і подивимося, що пішло не так. В Запити та підключення двічі клацніть запит, щоб відкрити редактор запитів Power.

Клацніть на Джерело крок у полі Застосовані кроки, а потім натисніть Домашня сторінка -> Оновити попередній перегляд. Вікно попереднього перегляду тепер показує таке:

Сподіваємось, ви зараз бачите проблему. Створений нами запит завантажує дані в Excel як таблицю, тому тепер він включається як вихідна таблиця кожного разу, коли запит оновлюється та поєднується з іншими таблицями, перш ніж знову завантажуватись у Excel. Щоразу, коли ми натискаємо кнопку Оновити, таблиця стає все довшою, довшою і довшою. Це трохи схоже на версію фільму "Початок" в Excel.

Давайте вирішимо цю проблему прямо зараз. Додайте крок після кроку Source, щоб відфільтрувати комбінований запит.

Чи буде цей фільтр змінити для видалення CombinedTables або він буде включати tblJanuary, tblFebruary та tblMarch? Це важливо, оскільки ми хочемо, щоб запит розширився, включивши нові таблиці у міру їх додавання до книги.

Погляньте на панель формул; код М буде:

Хороша новина полягає в тому, що цей код видалить таблицю CombinedTables, але дозволить будь-яким іншим таблицям, доданим до книги, автоматично включатись у область запиту.

Корисно мати стандартне узгодження імен таблиць та запитів. Наприклад, ви можете вирішити, що всі вихідні таблиці повинні мати tbl на початку, це дозволяє нам фільтрувати лише для включення таблиць, які починаються з tbl. Роблячи це, більше не має значення, скільки таблиць чи запитів у нас є, ефект циклічності можна контролювати.

Столи або асортименти

Power Query із задоволенням імпортує таблиці та іменовані діапазони. Якщо вони обидва існують на аркуші, то обидва перераховані.

Області друку - це особливий тип іменованого діапазону, тому вони також перераховані. Правильні правила іменування та фільтрування потрібні, щоб переконатися, що запит використовує джерело, яке ми хочемо.

Зміст серії Power Query

  1. Вступ
  2. Імпорт даних
  3. Оновлення даних
  4. Редагувати запити
  5. Параметри закриття та завантаження
  6. Використання параметрів
  7. Основні перетворення
  8. Об’єднати/додати запити
  9. Імпортувати всі файли в папку
  10. Перелічіть усі файли в папці та атрибути файлів
  11. Імпортуйте дані з поточної книги
  12. Імпортуйте дані з Інтернету
  13. Видалити дані
  14. Розпакування даних у стовпці
  15. Пошук значень за допомогою злиття
  16. Змініть розташування вихідних даних
  17. Формули
  18. Якщо висловлювання для умовної логіки
  19. Групування та узагальнення даних
  20. Спеціальні функції
  21. Поширені помилки та способи їх виправлення
  22. Поради та підказки

Не забувайте:

Якщо ви вважаєте цю публікацію корисною або маєте кращий підхід, залиште коментар нижче.

Вам потрібна допомога у адаптації цього до ваших потреб?

Я припускаю, що приклади в цій публікації не точно відповідають вашій ситуації. Всі ми використовуємо Excel по-різному, тому неможливо написати допис, який би відповідав потребам усіх. Витративши час на розуміння методів і принципів у цій публікації (та в інших місцях на цьому сайті), ви повинні мати можливість адаптувати її до своїх потреб.

Але, якщо ви все ще боретесь, вам слід:

  1. Читайте інші блоги або дивіться відео YouTube на ту саму тему. Ви отримаєте набагато більше користі, відкривши власні рішення.
  2. Запитайте «Excel Ninja» у вашому офісі. Дивно, що знають інші люди.
  3. Задайте питання на форумі, як Mr Excel, або спільноті відповідей Microsoft. Пам’ятайте, люди на цих форумах, як правило, віддають свій час безкоштовно. Тож подбайте про розробку свого питання, переконайтеся, що воно чітке та стисле. Перелічіть все, що ви спробували, та надайте знімки екрана, сегменти коду та приклади книг.
  4. Скористайтеся програмою Excel Rescue, яка є моїм консультантом. Вони допомагають, надаючи рішення менших проблем Excel.

Що далі?
Ще не йдіть, ще багато чого можна навчити в Excel Off The Grid. Перегляньте останні повідомлення: