#ПРЕЛИВАНЕ! грешка – Простира извън края на работния лист

Отнася се за
Excel за Microsoft 365 Excel за Microsoft 365 за Mac Excel за iPad Excel Web App Excel за iPhone Excel за таблети с Android: Excel за телефони с Android:

Прелелата формула за масив, която се опитвате да въведете, излиза извън диапазона на работния лист. Опитайте отново с по-малък диапазон или масив.

В следващия пример преместването на формулата в клетка F1 отстранява грешката и формулата прелива правилно.

Екранна снимка, която показва #SPILL! , където =SORT(D:D) в клетка F2 се простира извън краищата на работната книга. Преместете я в клетка F1 и тя работи правилно.

Често срещана причина: Препратки към цели колони

Често срещано недоразумение възниква при създаването на формули на VLOOKUP чрез заместване на аргумента lookup_value . Преди Excel с възможност за динамичен масив Excel взимаше предвид стойността само на същия ред като формулата и игнорираше всички останали, тъй като VLOOKUP очакваше само една стойност. С въвеждането на динамичните масиви Excel взема предвид всички стойности, предоставени на lookup_value. Тази промяна означава, че ако зададете цяла колона като аргумент lookup_value, Excel се опитва да търси всичките 1 048 576 стойности в колоната. След като приключи, той се опитва да ги разлее в мрежата и много вероятно достига края на мрежата, което води до #SPILL! грешка.  

Например когато е поставена в клетка E2, както е показано в следващия пример, формулата =VLOOKUP(A:A:A:C;2;FALSE) преди това търси само ИД в клетка A2. Обаче в динамичен масив Excel формулата предизвиква #SPILL! защото Excel търси цялата колона, връща 1 048 576 резултата и достига края на мрежата на Excel.

Екранна снимка, която показва #SPILL! грешка, предизвикана с =VLOOKUP(A:A;A:D;2;FALSE) в клетка E2, защото резултатите ще се разпространят извън границите на работния лист. Преместете формулата в клетка E1 и тя работи правилно.

Използвайте един от следните подходи, за да разрешите този проблем:

# Подход Формула
1 Препращайте само към стойностите на справки, които ви интересуват. Този стил на формула връща динамичен масив, но не работи с таблици на Excel.
Екранна снимка, която показва използване на =VLOOKUP(A2:A7;A:C;2;FALSE), за да се върне динамичен масив, който няма да доведе до #SPILL! като грешка.
=VLOOKUP(A2:A7;A:C;2;FALSE)
2 Посочете само стойността в същия ред и след това копирайте формулата надолу. Този традиционен стил на формула работи в таблици, но не връща динамичен масив.
Екранна снимка, която показва използване на традиционната VLOOKUP с една препратка към lookup_value: =VLOOKUP(A2;A:C;32;FALSE). Тази формула не връща динамичен масив, но можете да я използвате с таблици на Excel.
=VLOOKUP(A2;A:C;2;FALSE)
3 Поискайте от Excel да извърши неявно сечение с помощта на оператора @, а след това копирайте формулата надолу. Този стил на формула работи в таблици, но не връща динамичен масив.
Екранна снимка, която показва, че използвайте оператора @ и копирайте надолу: =VLOOKUP(@A:A;A:C;2;FALSE). Този стил на препратка работи в таблици, но не връща динамичен масив.
=VLOOKUP(@A:A;A:C;2;FALSE)

Имате нужда от още помощ?

Винаги можете да попитате експерт в техническата общност за Excel или да получите поддръжка в общностите.

Вж. също

FILTER функция

RANDARRAY функция

SEQUENCE функция

SORT функция

SORTBY функция

UNIQUE функция

Как се коригира #SPILL! грешки

Динамични формули за масиви и поведение на прелели масиви

Неяв оператор за сечение: @