Ви можете уникнути функції автозаповнення повністю за допомогою формул масиву . Просто введіть формулу, як звичайна, але додайте :column
в кінці кожної посилання на клітинку, а потім натисніть Ctrl+ Shift+Enter . Потім формула буде застосована негайно до всіх комірок стовпця, не перетягуючи нічого
Редагувати:
Новіші версії Excel автоматично використовуватимуть формули масиву для заповнення, коли з'явиться новий рядок даних
Починаючи з оновлення для Office 365 у вересні 2018 року, будь-яка формула, яка може повернути кілька результатів, автоматично переливає їх або вниз, або в сусідні комірки. Ця зміна поведінки також супроводжується кількома новими функціями динамічного масиву. Формули динамічного масиву, використовуючи вони вже існуючі функції або функції динамічного масиву, потрібно лише ввести в одну клітинку, а потім підтвердити натисканням клавіші Enter. Раніше застарілі формули масиву вимагають спершу вибрати весь діапазон виводу, а потім підтвердити формулу за допомогою Ctrl+ Shift+ Enter. Їх зазвичай називають формулами CSE.
Вказівки та приклади формул масиву
Якщо ви використовуєте старішу версію Excel або хочете дізнатися більше про формули масиву, продовжуйте читати
Наприклад, введення =B3:B + 2*C3:C
D3 та Ctrl+ Shift+ Enterеквівалентно набору тексту =B3 + 2*C3
та перетягування до кінця вниз, починаючи з рядка 3
Це швидко вводиться, але є недоліком, що невикористані комірки в кінці (поза поточною таблицею) все ще обчислюються і показують 0. Існує простий спосіб приховати 0 . Однак ще кращим способом є обмеження обчислення останнім стовпцем таблиці. Знаючи, що у формулі масиву ви можете X3:X101
застосовувати лише до комірок від X3 до X101, ми можемо використовувати INDIRECT
функцію для досягнення того ж ефекту
- Введіть
=LOOKUP(2, 1/(A:A <> ""), A:A)
у якусь клітинку за межами таблиці, щоб знайти останню не порожню клітинку таблиці та назвіть її LastRow
. Альтернативно використовувати, =COUNTA(A3:A) + 2
коли перший рядок таблиці становить 3
- Тоді замість
B3:B
використання=INDIRECT("B3:B" & LastRow)
Наприклад , якщо ви хочете осередки в стовпці D , щоб утримувати продукти клітин в В і С, а стовпець Е містить суми B і C, замість того щоб використовувати D3 = B3*C3
і E3 = B3 + C3
і перетягнути вниз , ви просто поставити нижче формул D3 і E3 відповідно і натисніть Ctrl+ Shift+Enter
=INDIRECT("B3:B" & LastRow) * INDIRECT("C3:C" & LastRow)
=INDIRECT("B3:B" & LastRow) + INDIRECT("C3:C" & LastRow)
Відтепер щоразу, коли ви додаєте дані в новий рядок, таблиця буде автоматично оновлюватися
Формула масиву дуже швидка, оскільки модель доступу до даних вже відома. Тепер замість того, щоб робити 100001 різних обчислень окремо, їх можна векторизувати та робити паралельно , використовуючи декілька ядер та SIMD-блок у ЦП. Він також має наступні переваги:
- Послідовність: Якщо натиснути будь-яку клітинку від E2 вниз, ви побачите ту саму формулу. Ця послідовність може допомогти забезпечити більшу точність.
- Безпека: Ви не можете перезаписати компонент формули з багатоклітинним масивом. Наприклад, натисніть на комірку E3 і натисніть Видалити. Вам потрібно або вибрати весь діапазон комірок (від E2 до E11) і змінити формулу для всього масиву, або залишити масив таким, яким він є. Як додатковий захід безпеки, вам потрібно натиснути Ctrl+ Shift+ Enterдля підтвердження зміни формули.
- Менші розміри файлів: часто можна використовувати одну формулу масиву замість кількох проміжних формул. Наприклад, книга використовує одну формулу масиву для обчислення результатів в колонці E. Якщо ви використовували стандартні формули (такі як
=C2*D2
, C3*D3
, C4*D4
...), ви б використовували 11 різних формул для розрахунку одні і ті ж результати.
Вказівки та приклади формул масиву
Більше інформації читайте