Зміст
Завдяки революційному оновленню в обчислювальному движку Excel 365 формули масивів стали дуже простими і зрозумілими для всіх, а не тільки для суперкористувачів. У посібнику пояснюється концепція нових динамічних масивів Excel і показується, як вони можуть зробити ваші робочі аркуші більш ефективними і набагато простішими в налаштуванні.
Формули масивів Excel завжди вважалися прерогативою гуру і знавців формул. Якщо хтось каже: "Це можна зробити за допомогою формули масиву", негайною реакцією багатьох користувачів є "А що, немає іншого способу?".
Впровадження динамічних масивів є довгоочікуваною і найбільш бажаною зміною. Завдяки своїй здатності працювати з декількома значеннями простим способом, без будь-яких хитрощів і хитрощів, формули динамічних масивів - це те, що зрозуміло кожному користувачеві Excel, і що він може створювати з задоволенням.
Динамічні масиви Excel
Динамічні масиви це масиви зі змінними розмірами, які автоматично обчислюють і повертають значення в декілька клітинок на основі формули, введеної в одну клітинку.
За більш ніж 30-річну історію Microsoft Excel зазнав безліч змін, але одне залишалося незмінним - одна формула, одна комірка. Навіть з традиційними формулами масивів необхідно було вводити формулу в кожну комірку, де ви хочете, щоб з'явився результат. З динамічними масивами це правило вже не актуально. Тепер будь-яка формула, яка повертає масив значень, автоматично розливається в сусідніІнакше кажучи, робота з динамічними масивами стає такою ж простою, як і робота з однією коміркою.
Дозвольте мені проілюструвати цю концепцію на дуже простому прикладі. Припустимо, вам потрібно перемножити дві групи чисел, наприклад, для того, щоб обчислити різні відсотки.
У попередніх версіях Excel наведена нижче формула буде працювати тільки для першої комірки, якщо тільки ви не введете її в декілька комірок і не натиснете Ctrl + Shift + Enter, щоб явно зробити її формулою масиву:
=A3:A5*B2:D2
А тепер подивіться, що відбувається, коли ту ж саму формулу використовувати в Excel 365. Ви вводите її в одну комірку (в нашому випадку - B3), натискаєте клавішу Enter... і отримуєте відразу весь буйство результатів:
Заповнення декількох клітинок однією формулою називається розлив а заповнений діапазон комірок називається діапазоном розливу.
Важливо відзначити, що останнє оновлення - це не просто новий спосіб роботи з масивами в Excel. Фактично, це революційна зміна всього обчислювального движка. Завдяки динамічним масивам в бібліотеку функцій Excel було додано купу нових функцій, а існуючі стали працювати швидше і ефективніше. В кінцевому підсумку, нові динамічні масиви повинні повністюзамінити старомодні формули масивів, які вводяться за допомогою комбінації клавіш Ctrl + Shift + Enter.
Доступність динамічних масивів Excel
Динамічні масиви були представлені на конференції Microsoft Ignite у 2018 році та доступні для передплатників Office 365 у січні 2020 року. Наразі вони доступні в Підписки на Microsoft 365 та Excel 2021.
У цих версіях підтримуються динамічні масиви:
- Excel 365 для Windows
- Excel 365 для Mac
- Excel 2021
- Excel 2021 для Mac
- Excel для iPad
- Excel для iPhone
- Excel для Android-планшетів
- Excel для телефонів Android
- Excel для Інтернету
Функції динамічних масивів Excel
В рамках нового функціоналу в Excel 365 з'явилося 6 нових функцій, які нативно працюють з масивами і виводять дані в діапазон комірок. Висновок завжди динамічний - при будь-якій зміні вихідних даних результати оновлюються автоматично. Звідси і назва групи - "Висновок". функції динамічних масивів .
Ці нові функції легко справляються з низкою завдань, які традиційно вважаються міцним горішком. Наприклад, вони можуть видаляти дублікати, витягувати і підраховувати унікальні значення, відфільтровувати пропуски, генерувати випадкові цілі і десяткові числа, сортувати за зростанням або спаданням і багато іншого.
Нижче ви знайдете короткий опис того, що робить кожна функція, а також посилання на поглиблені навчальні посібники:
- UNIQUE - витягує унікальні елементи з діапазону комірок.
- ФІЛЬТР - фільтрує дані на основі визначених вами критеріїв.
- СОРТУВАННЯ - сортує діапазон комірок за вказаним стовпцем.
- СОРТУВАННЯ - сортує діапазон комірок за іншим діапазоном або масивом.
- RANDARRAY - генерує масив випадкових чисел.
- SEQUENCE - формує список порядкових номерів.
- TEXTSPLIT - розбиває рядки на стовпці та/або рядки за вказаним роздільником.
- TOCOL - перетворити масив або діапазон в один стовпець.
- TOROW - перетворити діапазон або масив в один рядок.
- WRAPCOLS - перетворює рядок або стовпець в 2D масив на основі вказаної кількості значень в рядку.
- WRAPROWS - переформує рядок або стовпець у 2D масив на основі вказаної кількості значень у стовпці.
- TAKE - витягує вказану кількість суміжних рядків та/або стовпців з початку або кінця масиву.
Крім того, є дві сучасні заміни популярних функцій Excel, які офіційно не входять до групи, але використовують всі переваги динамічних масивів:
XLOOKUP - більш потужний наступник VLOOKUP, HLOOKUP і LOOKUP, який може шукати як в стовпцях, так і в рядках і повертати декілька значень.
XMATCH - більш універсальний наступник функції MATCH, який може виконувати вертикальний і горизонтальний пошук і повертати відносне положення вказаного елемента.
Формули динамічних масивів Excel
У сучасних версіях Excel поведінка динамічних масивів глибоко інтегрована і стає нативною для всі функції навіть ті, які спочатку не були призначені для роботи з масивами. Простіше кажучи, для будь-якої формули, яка повертає більше одного значення, Excel автоматично створює діапазон змінних розмірів, в який виводяться результати. Завдяки цій здатності, існуючі функції тепер можуть творити магію!
Наведені нижче приклади демонструють нові формули динамічних масивів у дії, а також вплив динамічних масивів на існуючі функції.
Приклад 1. Нова функція динамічного масиву
Цей приклад демонструє, наскільки швидше і простіше можна вирішити задачу за допомогою функцій динамічних масивів Excel.
Щоб витягти список унікальних значень зі стовпця, ви традиційно використовували складну формулу CSE, подібну до цієї. У динамічному Excel все, що вам потрібно, - це формула UNIQUE в її базовій формі:
=UNIQUE(B2:B10)
Ви вводите формулу в будь-яку порожню комірку і натискаєте Enter. Excel негайно витягує всі різні значення зі списку і виводить їх в діапазон комірок, починаючи з комірки, в яку ви ввели формулу (D2 в нашому випадку). Коли вихідні дані змінюються, результати перераховуються і оновлюються автоматично.
Приклад 2. Об'єднання декількох функцій динамічних масивів в одній формулі
Якщо немає можливості виконати завдання за допомогою однієї функції, об'єднайте кілька функцій разом! Наприклад, щоб відфільтрувати дані на основі умови і впорядкувати результати за алфавітом, оберніть функцію SORT навколо функції FILTER таким чином:
=SORT(FILTER(A2:C13, B2:B13=F1, "Немає результатів"))
Де A2:C13 - вихідні дані, B2:B13 - значення для перевірки, F1 - критерій.
Приклад 3. Використання нових функцій динамічних масивів разом з існуючими
Оскільки новий обчислювальний механізм, реалізований в Excel 365, може легко перетворювати звичайні формули в масиви, ніщо не завадить вам поєднувати нові та старі функції разом.
Наприклад, щоб підрахувати, скільки унікальних значень є в певному діапазоні, вкладіть функцію динамічного масиву UNIQUE в стару добру COUNTA:
=COUNTA(UNIQUE(B2:B10))
Приклад 4. Існуючі функції підтримують динамічні масиви
Якщо ви надасте діапазон клітинок функції ОБМЕЖЕННЯ в старішій версії, наприклад, Excel 2016 або Excel 2019, вона поверне єдиний результат для першої клітинки:
=TRIM(A2:A6)
У динамічному Excel одна і та ж формула обробляє всі клітинки і повертає кілька результатів, як показано нижче:
Приклад 5. Формула VLOOKUP для повернення декількох значень
Як відомо, функція ПОИСК призначена для повернення одного значення на основі вказаного вами індексу стовпця. Однак в Excel 365 ви можете вказати масив номерів стовпців, щоб повернути збіги з декількох стовпців:
=VLOOKUP(F1, A2:C6, {1,2,3}, FALSE)
Приклад 6: Формула TRANSPOSE спрощена
У попередніх версіях Excel синтаксис функції ТРАНСПОЗИЦИЯ не залишав місця для помилок. Щоб повернути дані на аркуші, потрібно було порахувати вихідні стовпці і рядки, виділити стільки ж порожніх комірок, але змінити орієнтацію (запаморочлива операція на величезних аркушах!), набрати формулу ТРАНСПОЗИЦИЯ у виділеному діапазоні і натиснути Ctrl + Shift + Enter для її правильного завершення. Тьфу ти!
У динамічному Excel достатньо ввести формулу в крайню ліву комірку вихідного діапазону і натиснути Enter:
=TRANSPOSE(A1:B6)
Готово!
Діапазон розливу - одна формула, кілька комірок
На сьогоднішній день, на жаль, це не так. діапазон розливу діапазон комірок, що містить значення, які повертаються формулою динамічного масиву.
При виділенні будь-якої комірки в діапазоні розливу з'являється синя рамка, яка показує, що все всередині неї розраховується за формулою у верхній лівій комірці. Якщо видалити формулу в першій комірці, то всі результати зникнуть.
Діапазон розливу - це дійсно чудова річ, яка значно полегшує життя користувачам Excel. Раніше, використовуючи формули масиву CSE, ми повинні були вгадувати, в скільки комірок їх скопіювати. Тепер ви просто вводите формулу в першу комірку, і нехай Excel подбає про все інше.
Примітка: Якщо якісь інші дані блокують діапазон розливу, виникає помилка #SPILL. Як тільки дані, що заважають, будуть видалені, помилка зникне.
Для отримання додаткової інформації, будь ласка, дивіться діапазон розливу в Excel.
Орієнтовний діапазон розливу (символ #)
Для посилання на діапазон розливу слід поставити хеш-тег або символ фунта (#) після адреси верхньої лівої комірки діапазону.
Наприклад, щоб дізнатися, скільки випадкових чисел генерується формулою RANDARRAY в комірці A2, введіть посилання на діапазон розливу в функцію COUNTA:
=COUNTA(A2#)
Для підсумовування значень в діапазоні розливу використовуйте:
=SUM(A2#)
Чайові:
- Для швидкого посилання на діапазон розливу, просто виберіть всі комірки всередині синього поля за допомогою миші, і Excel створить посилання на діапазон розливу для вас.
- На відміну від звичайного еталонного діапазону, еталонний діапазон розливу є динамічним і автоматично реагує на зміну розміру діапазону.
- Витяг унікальних значень: традиційні формули
- Обчислюємо унікальні та відмінні цінності: традиційні формули
- Сортування стовпців за алфавітом: традиційні формули
- Динамічний Excel який повністю підтримує динамічні масиви, функції та формули. Наразі це лише Excel 365 та Excel 2021.
- Застарілий Excel він же традиційний або додинамічний Excel, де підтримуються тільки масивні формули Ctrl + Shift + Enter. Це Excel 2019, Excel 2016, Excel 2013 і більш ранні версії.
- Формула динамічного масиву вводиться в одну комірку і завершується звичайним натисканням клавіші Enter. Для завершення формули масиву по-старому потрібно натиснути комбінацію клавіш Ctrl + Shift + Enter .
- Нові формули масиву автоматично поширюються на багато клітинок. Формули CSE повинні бути скопійовані в діапазон клітинок, щоб отримати кілька результатів.
- Висновок формул динамічних масивів автоматично змінює розмір при зміні даних у вихідному діапазоні. Формули CSE усікають висновок, якщо область повернення занадто мала, і повертають помилки в зайвих комірках, якщо область повернення занадто велика.
- Формула динамічного масиву легко редагується в одній комірці. Для зміни формули CSE необхідно виділити і відредагувати весь діапазон.
- У діапазоні формул CSE неможливо видаляти і вставляти рядки - спочатку потрібно видалити всі існуючі формули. У динамічних масивах вставка або видалення рядків не є проблемою.
- Помилка Excel #SPILL - причини та способи усунення
- Як виправити помилку #SPILL! за допомогою VLOOKUP, INDEX MATCH, SUMIF
Для більш детальної інформації, будь ласка, зверніться до розділу Оператор полігону для розливу.
Неявний перетин і символ @
У динамічних масивах Excel відбулася ще одна суттєва зміна мови формул - введення символу @, відомого як неявний оператор перетину .
У Microsoft Excel, неявний перетин це поведінка формули, яка зводить багато значень до одного значення. У старому Excel комірка могла містити тільки одне значення, тому це була поведінка за замовчуванням і для неї не було потрібно спеціального оператора.
У новому Excel всі формули за замовчуванням розглядаються як формули масиву. Оператор неявного перетину використовується для того, щоб запобігти поведінці масиву, якщо він не потрібен у конкретній формулі. Іншими словами, якщо ви хочете, щоб формула повертала тільки одне значення, поставте @ перед ім'ям функції, і вона буде поводитися як формула, що не є масивом, у традиційному Excel.
Щоб побачити, як це працює на практиці, будь ласка, подивіться на скріншот нижче.
У С2 є формула динамічного масиву, яка розкидає результати по багатьом коміркам:
=UNIQUE(A2:A9)
В Е2 до функції додано префікс @, який викликає неявне перетинання. В результаті повертається тільки перше унікальне значення:
=@UNIQUE(A2:A9)
Для отримання додаткової інформації, будь ласка, дивіться Неявний перетин в Excel.
Переваги динамічних масивів Excel
Безсумнівно, динамічні масиви - одне з кращих удосконалень Excel за останні роки. Як і будь-яка нова функція, вони мають сильні та слабкі сторони. На щастя для нас, сильні сторони нових формул динамічних масивів Excel переважають!
Простіше і потужніше
Динамічні масиви дають можливість створювати більш потужні формули набагато простішим способом. Наведемо кілька прикладів:
Рідна мова для всіх формул
У динамічному Excel не потрібно перейматися тим, які функції підтримують масиви, а які ні. Якщо формула може повертати кілька значень, вона буде робити це за замовчуванням. Це також стосується арифметичних операцій і успадкованих функцій, як продемонстровано в цьому прикладі.
Вкладені функції динамічних масивів
Для вирішення більш складних завдань ви можете комбінувати нові функції динамічних масивів Excel або використовувати їх разом зі старими, як показано тут і тут.
Відносні та абсолютні згадки менш важливі
Завдяки підходу "одна формула - багато значень" немає необхідності блокувати діапазони знаком $, оскільки технічно формула знаходиться всього в одній комірці. Таким чином, здебільшого не має значення, використовувати абсолютні, відносні або змішані посилання на комірки (що завжди викликало плутанину у недосвідчених користувачів) - формула динамічного масиву в будь-якому випадку видасть коректні результати!
Обмеження динамічних масивів
Нові динамічні масиви - це чудово, але, як і з будь-якою новою функцією, є кілька застережень і міркувань, про які вам слід знати.
Результати не можуть бути відсортовані звичайним способом
Діапазон розливу, що повертається формулою динамічного масиву, не може бути відсортований за допомогою функції Сортування Excel. Будь-яка така спроба призведе до того, що в результаті з'явиться символ " Не можна змінювати частину масиву "Щоб упорядкувати результати від найменшого до найбільшого або навпаки, оберніть поточну формулу у функцію СОРТУВАННЯ. Наприклад, таким чином можна одночасно фільтрувати і сортувати.
Неможливо видалити жодне значення в діапазоні розливу
Жодне із значень в діапазоні розливу не може бути видалене з тієї ж причини: не можна змінити частину масиву. Така поведінка є очікуваною і логічною. Традиційні формули масиву CSE також працюють таким чином.
Не підтримуються в таблицях Excel
Ця особливість (чи баг?) досить несподівана. Формули динамічних масивів не працюють всередині таблиць Excel, тільки всередині звичайних діапазонів. Якщо спробувати перетворити діапазон розливу в таблицю, Excel це зробить. Але замість результату ви побачите лише помилку #SPILL!
Не працювати з Excel Power Query
Результати формул динамічних масивів не можуть бути завантажені в Power Query. Скажімо, якщо ви спробуєте об'єднати два або більше діапазонів розливу за допомогою Power Query, це не спрацює.
Динамічні масиви в порівнянні з традиційними формулами масивів CSE
З введенням динамічних масивів можна говорити про два види Excel:
Зрозуміло, що динамічні масиви за всіма параметрами перевершують формули масивів CSE. Хоча традиційні формули масивів зберігаються з міркувань сумісності, відтепер рекомендується використовувати нові.
Ось найбільш суттєві відмінності:
Зворотна сумісність: динамічні масиви в застарілому Excel
При відкритті книги, що містить формулу динамічного масиву в старому Excel, вона автоматично перетворюється в звичайну формулу масиву, укладену в {фігурні дужки}. При повторному відкритті аркуша в новому Excel фігурні дужки будуть видалені.
У застарілому Excel нові функції динамічних масивів та посилання на діапазон розливу отримують префікс _xlfn, щоб вказати, що ця функціональність не підтримується. Знак посилання на діапазон розливу (#) замінюється на функцію ANCHORARRAY (АНКОРЕКТОР).
Наприклад, ось як виглядає УНІКАЛЬНА формула в Excel 2013 :
Більшість формул динамічних масивів (але не всі!) продовжуватимуть відображати свої результати в застарілому Excel, поки ви не внесете в них будь-які зміни. Редагування формули негайно розриває її і відображає одне або кілька значень помилки #NAME?
Не працюють формули динамічних масивів Excel
В залежності від функції можуть виникати різні помилки при використанні неправильного синтаксису або недопустимих аргументів. Нижче наведено 3 найпоширеніші помилки, з якими можна зіткнутися при роботі з будь-якою формулою динамічного масиву.
#SPILL! помилка
Коли динамічний масив повертає декілька результатів, але щось блокує діапазон розливу, виникає помилка #SPILL!
Для виправлення помилки потрібно просто очистити або видалити всі комірки в діапазоні розливу, які не є повністю порожніми. Щоб швидко помітити всі комірки, які заважають, клацніть по індикатору помилки, а потім натисніть Виберіть клітинки, що заважають .
Крім непорожнього діапазону розливу, ця помилка може бути викликана кількома іншими причинами. Для отримання додаткової інформації, будь ласка, дивіться:
#REF! помилка
Через обмежену підтримку зовнішніх посилань між робочими книгами, динамічні масиви вимагають, щоб обидва файли були відкриті. Якщо вихідна робоча книга закрита, видається помилка #REF!
#NAME? помилка
Помилка #NAME? виникає при спробі використовувати функцію динамічного масиву в старій версії Excel. Пам'ятайте, що нові функції доступні тільки в Excel 365 і Excel 2021.
Якщо ця помилка з'являється в підтримуваних версіях Excel, перевірте ще раз назву функції в проблемній комірці - можливо, вона набрана з помилкою :)
Ось так можна використовувати динамічні масиви в Excel. Сподіваюся, вам сподобається ця фантастична нова функціональність! У будь-якому випадку, дякую за прочитання і сподіваюся побачити вас на нашому блозі наступного тижня!