Ошибки #ПЕРЕНОС! — выходит за границу листа

Применяется к
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, и он работает правильно.

Распространенная причина: ссылки на весь столбец

Распространенное недоразумение возникает при создании формул ВПР из-за переуказания аргумента lookup_value . До появления Excel с поддержкой динамических массивов Excel рассматривал только значение в той же строке, что и формула, и игнорировал все остальные, так как ВПР ожидала только одно значение. С появлением динамических массивов Excel учитывает все значения, предоставляемые lookup_value. Это изменение означает, что если в качестве lookup_value аргумента указан целый столбец, Excel попытается найти все 1 048 576 значений в столбце. После завершения он пытается вылить их в сетку и, скорее всего, достигает конца сетки, что приводит к #SPILL! .  

Например, при размещении в ячейке E2 формулы =ВПР(A:A;A:C;2;ЛОЖЬ ) (как в следующем примере) ранее выполнялся поиск только ИД в ячейке A2. Однако в Excel с динамическими массивами эта формула вызывает #SPILL! так как Excel выполняет поиск во всем столбце, возвращает 1 048 576 результатов и достигает конца сетки Excel.

Снимок экрана: #SPILL! вызвана формулой =ВПР(A:A;A:D;2;ЛОЖЬ) в ячейке E2, так как результаты переносятся за границы листа. Переместите формулу в ячейку E1, и она будет работать правильно.

Чтобы устранить эту проблему, используйте один из следующих способов:

# Способ Формула
1 Ссылайтесь только на нужные значения поиска. Формула этого стиля возвращает динамический массив, но не работает с таблицами Excel.
Снимок экрана: использование =ВПР(A2:A7;A:C;2;ЛОЖЬ) для возврата динамического массива, который не приведет к #SPILL! .
=ВПР(A2:A7;A:C;2;ЛОЖЬ)
2 Сошлитесь на значение в той же строке, а затем скопируйте формулу. Этот традиционный стиль формулы работает в таблицах, но не возвращает динамический массив.
Снимок экрана, на котором показано использование традиционной функции ВПР с одной ссылкой на lookup_value: =ВПР(A2;A:C;32;ЛОЖЬ). Эта формула не возвращает динамический массив, но его можно использовать с таблицами Excel.
=ВПР(A2;A:C;2;ЛОЖЬ)
3 Создайте в Excel запрос неявного пересечения с помощью оператора @, а затем скопируйте формулу. Этот стиль формулы работает в таблицах, но не возвращает динамический массив.
Снимок экрана: использование оператора @ и копирование: =ВПР(@A:A;A:C;2;ЛОЖЬ). Этот стиль ссылки работает в таблицах, но не возвращает динамический массив.
=ВПР(@A:A;A:C;2;ЛОЖЬ)

Дополнительные сведения

Вы всегда можете задать вопрос эксперту в Excel Tech Community или получить поддержку в сообществах.

См. также

Функция ФИЛЬТР

Функция СЛУЧМАССИВ

Функция ПОСЛЕДОВ

Функция СОРТ

Функция СОРТПО

Функция УНИК

Исправление ошибки ошибки

Формулы динамического массива и поведение перенесенного массива

Оператор неявного пересечения: @