Повертаються помилки #SPILL, коли формула повертає кілька результатів, і Excel не може повернути результати до сітки. Докладні відомості про ці типи помилок див. в таких розділах довідки:
Ця помилка виникає, коли діапазон розгортання для розгорнутої формули масиву не пустий.
Виберіть формулу, щоб відобразити пунктирну межу, яка позначає цільовий діапазон розливу. Якщо вибрати формулу, з'явиться оповіщення про перевірку помилок.
Виберіть оповіщення про перевірку помилок і виберіть параметр Вибрати обструктивні клітинки, щоб негайно перейти до клітинок, які перешкоджають виникати. Потім можна усунути помилку, видаливши або перемістивши запис клітинки, що перешкоджає. Після усунення перешкоди формула масиву розгорнеться належним чином.
Програмі Excel не вдалося визначити розмір розгорнутого масиву, оскільки він нестабільний, а розмір – між проходженнями обчислень. Наприклад, наведена нижче формула запустить цю #SPILL! помилку:
=SEQUENCE(RANDBETWEEN(1,1000))
Змінення розміру динамічного масиву може викликати додаткові обчислення, щоб забезпечити повне обчислення електронної таблиці. Якщо розмір масиву й надалі змінюватиметься під час цих додаткових проходжень обчислень і не стабілізуватиметься, Excel розв'язуватиме динамічний масив, як #SPILL!.
Це значення помилки зазвичай пов'язане з використанням функцій RAND, RANDARRAY та RANDBETWEEN. Інші змінні функції, наприклад OFFSET, INDIRECT та TODAY не повертають різні значення під час кожного проходження обчислення.
Наприклад, якщо помістити в клітинку E2, як у прикладі нижче, формула =VLOOKUP(A:A,A:C,2,FALSE) раніше лише шукала ідентифікатор в клітинці A2. Однак у динамічному масиві Excel формула спричинить #SPILL! оскільки Excel шукатиме весь стовпець, повертатиме 1 048 576 результатів і потрапить у кінець сітки Excel.
Вирішити цю проблему можна трьома простими способами:
# |
Підхід |
Формула |
---|---|---|
1 |
Посилання лише на потрібні значення пошуку. Цей стиль формули повертає динамічний масив, але не працює з таблицями Excel.
|
=VLOOKUP(A2:A7,A:C,2,FALSE) |
2 |
Додайте посилання лише на значення в тому самому рядку, а потім скопіюйте формулу вниз. Цей традиційний стиль формул працює в таблицях але не поверне динамічний масив.
|
=VLOOKUP(A2,A:C,2,FALSE) |
3 |
Попросіть Excel виконати неявний перетин за допомогою оператора @, а потім скопіюйте формулу вниз. Цей стиль формули працює в таблицях але не поверне динамічний масив.
|
=VLOOKUP(@A:A,A:C,2,FALSE) |
Розгорнуті формули масивів не підтримуються в таблицях Excel. Спробуйте перемістити формулу з таблиці або перетворити її на діапазон (виберіть Конструктор таблиць > Знаряддя > Перетворити на діапазон).
Формула розгорнутого масиву, яку ви намагаєтеся ввести, спричинила брак пам'яті в Excel. Спробуйте посилатися на менший масив або діапазон.
Розгорнуті формули масиву не можна розлити в об'єднані клітинки. Будь ласка, роз'єднайте клітинки або перемістіть формулу до іншого діапазону, який не перетинається з об'єднаними клітинками.
Виберіть формулу, щоб відобразити пунктирну межу, яка позначає цільовий діапазон розливу. Якщо вибрати формулу, з'явиться оповіщення про перевірку помилок.
Ви можете вибрати оповіщення про перевірку помилок і вибрати параметр Вибрати обструктивні клітинки , щоб негайно перейти до клітинок, що перешкоджають. Після усунення об'єднаних клітинок формула масиву розгорнеться належним чином.
Excel не розпізнає або не може узгодити причину цієї помилки. Переконайтеся, що формула містить усі необхідні аргументи для сценарію.
Потрібна додаткова довідка?
Додаткові відомості
Ви завжди можете поставити запитання експерту в спільноті Tech у розділі Excel чи отримати підтримку в спільнотах.