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

Грешката #REF! се показва, когато формула препраща към невалидна клетка. Най-често това се случва, когато клетките, към които препраща формулата, са изтрити и в тях е поставено друго съдържание.

Следващият пример използва формулата =SUM(B2;C2;D2) в колона E.

Формула, която използва явни препратки към клетка, като напр. =SUM(B2;C2;D2), може да доведе до грешка #REF!, ако колона е изтрита.

Ако изтриете колона B, C или D, това ще доведе до #REF! грешка. В този случай ще изтрием колона C (2007 Продажби) и сега формулата чете =SUM(B2;#REF!,C2). Когато използвате явни препратки към клетки като тази (където препращате към всяка клетка поотделно, разделени със запетая) и изтривате адресиран ред или колона, Excel не може да я разреши, така че връща #REF! грешка. Това е основната причина, поради която използването на явни препратки към клетки във функции не се препоръчва.

Пример за #REF! #REF!, предизвикана от изтриване на колона.

Решение

  • Ако случайно сте изтрили редове или колони, можете веднага да щракнете върху бутона "Отмени" в лентата с инструменти за бърз достъп (или да натиснете CTRL+Z), за да ги възстановите.

  • Променете формулата, така че да използва препратка към диапазон, вместо отделни клетки, например =SUM(B2:D2). Сега може да изтриете която и да е колона в диапазона за сумиране, а Excel автоматично ще коригира формулата. Можете също да използвате =SUM(B2:B5) за сумиране на редове.

В следващия пример =VLOOKUP(A8;A2:D5;5;FALSE) ще върне #REF! защото търси стойност, която да върне от колона 5, но диапазонът на препратката е A:D, което е само 4 колони.

Пример за формула VLOOKUP с неправилен диапазон.  Формулата е =VLOOKU(A8;A2:D5;5;FALSE).  Няма пета колона в диапазона на VLOOKUP, така че 5 предизвиква #REF! грешка.

Решение

Увеличете диапазона или намалете стойността за колоните за търсене, така че да съответства на диапазона на препратката. =VLOOKUP(A8;A2:E5;5;FALSE) би бил валиден диапазон на препратката, както и =VLOOKUP(A8;A2:D5;4;FALSE).

В този пример формулата =INDEX(B2:E5;5;5) връща #REF! защото диапазонът на INDEX е 4 реда по 4 колони, но формулата иска да върне това, което е в петия ред и петата колона.

Пример за формула INDEX с невалидна препратка към диапазон.  Формулата е =INDEX(B2:E5;5;5), но обхватът е само 4 реда на 4 колони.

Решение

Променете препратките към редове или колони, така че да са в диапазона за търсене на функцията INDEX. =INDEX(B2:E5;4;4) ще върне валиден резултат.

В следващия пример функцията INDIRECT се опитва да препраща към работна книга, която е затворена, причинявайки #REF! грешка.

Пример за #REF! предизвикана от INDIRECT препратка към затворена работна книга.

Решение

Отворете работната книга, към която има препратка. Ще се натъкнете на същата грешка, ако препращате към затворена работна книга с функция за динамичен масив.

Структурираните препратки към имена на таблици и колони в свързани работни книги не се поддържат.

Изчисляемите препратки към свързани работни книги не се поддържат.

Преместването или изтриването на клетки е причинило невалидна препратка към клетка или функцията връща грешка в препратката.

Ако сте използвали връзка за свързване и вграждане на обекти (OLE), която връща #REF! , след което стартирайте програмата, към която се обажда връзката.

Забележка: OLE е технология, която можете да използвате, за да споделяте информация между програми.

Ако сте използвали тема за динамичен обмен на данни (DDE), която връща #REF! първо проверете, за да се уверите, че препращате към правилната тема. Ако все още получавате #REF! проверете настройките на центъра за сигурност за външно съдържание, както е описано в Блокиране или разблокиране на външно съдържание в документи на Office.

Забележка: Динамичният обмен на данни (DDE)е установен протокол за обмен на данни между базирани на Windows програми на Microsoft.

Проблеми с макроси

Ако макрос въведе функция в работния лист, която препраща към клетка над функцията, а клетката, съдържаща функцията, е в ред 1, функцията ще върне #REF! защото няма клетки над ред 1. Проверете функцията, за да видите дали даден аргумент не препраща към невалидна клетка или диапазон от клетки. Това може да изисква редактиране на макроса в редактора на Visual Basic (VBE), за да се вземе предвид тази ситуация.

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

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

Вж. също

Общ преглед на формулите в Excel

Начини за избягване на повредени формули

Откриване на грешки във формули

Функции на Excel (по азбучен ред)

Функции на Excel (по категории)

Нуждаете се от още помощ?

Разширете уменията си

Преглед на обучението >

Получавайте първи новите функции

Присъединете се към Microsoft приобщени >

Беше ли полезна тази информация?

Доколко сте доволни от качеството на езика?
Какво е повлияло на вашия потребителски опит?

Благодарим ви за обратната връзка!

×