spill excel что это
How to correct a #SPILL! error
#SPILL errors are returned when a formula returns multiple results, and Excel cannot return the results to the grid. For more details on these error types, see the following help topics:
This error occurs when the spill range for a spilled array formula isn’t blank.
When the formula is selected, a dashed border will indicate the intended spill range.
You can select the Error floatie, and choose the Select Obstructing Cells option to immediately go the obstructing cell(s). You can then clear the error by either deleting, or moving the obstructing cell’s entry. As soon as the obstruction is cleared, the array formula will spill as intended.
Excel was unable to determine the size of the spilled array because it’s volatile, and resizes between calculation passes. For instance, the following formula will trigger this #SPILL! error:
Dynamic array resizes may trigger additional calculation passes to ensure the spreadsheet is fully calculated. If the size of the array continues to change during these additional passes and does not stabilize, Excel will resolve the dynamic array as #SPILL!.
This error value is generally associated with the use of RAND, RANDARRAY, and RANDBETWEEN functions. Other volatile functions such as OFFSET, INDIRECT, and TODAY do not return different values on every calculation pass.
There are 3 simple ways to resolve this issue:
Reference just the lookup values you are interested in. This style of formula will return a dynamic array, but does not work with Excel tables.
Reference just the value on the same row, and then copy the formula down. This traditional formula style works in tables, but will not return a dynamic array.
Request that Excel perform implicit intersection using the @ operator, and then copy the formula down. This style of formula works in tables, but will not return a dynamic array.
Spilled array formulas aren’t supported in Excel tables. Try moving your formula out of the table, or converting the table to a range (click Table Design > Tools > Convert to range).
The spilled array formula you’re attempting to enter has caused Excel to run out of memory. Please try referencing a smaller array or range.
Spilled array formulas cannot spill into merged cells. Please un-merge the cells in question, or move the formula to another range that doesn’t intersect with merged cells.
When the formula is selected, a dashed border will indicate the intended spill range.
You can select the Error floatie, and choose the Select Obstructing Cells option to immediately go the obstructing cell(s). As soon as the merged cells are cleared, the array formula will spill as intended.
Excel doesn’t recognize, or can’t reconcile the cause of this error. Please make sure your formula contains all the required arguments for your scenario.
Need more help?
You can always ask an expert in the Excel Tech Community or get support in the Answers community.
Исправление ошибки #SPILL! #ИМЯ?
#SPILL возвращаются ошибки, если формула возвращает несколько результатов, Excel не удается вернуть результаты в сетку. Дополнительные сведения об этих типах ошибок см. в следующих разделах справки:
Эта ошибка возникает, если диапазон для формулы с пролитым массивом не пуст.
При выборе формулы пунктирый обтекает предполагаемый диапазон отлива.
Вы можете выбрать всплывающий элемент Ошибка и выбрать параметр Выбор ячеек, чтобы сразу же перейти к тем ячейкам, которые не должны быть заметивы. После этого вы можете удалить или перечеркить доступ к запрещенной ячейке. После очистки этой функции формула массива будет пролита по замечу.
Excel не удалось определить размер разлитого массива из-за его нестабильной нестабильной работы и перенастройки между прогонами вычислений. Например, следующая формула активирует #SPILL! Ошибка:
Динамические измеления массива могут активировать дополнительные вычисления, чтобы обеспечить полное вычисление электронных таблиц. Если размер массива будет изменяться во время этих дополнительных пропусков и не будет разоючен, Excel разрешит динамический массив #SPILL!.
Это значение ошибки обычно связано с использованием функций СЛ RAND,RANDARRAYи RANDBETWEEN. Другие переменные функции, такие как СМЕЩЕНИЕ,ДВСИМВи СЕГОДНЯ, не возвращают разных значений при каждом прочете вычислений.
Например, при размещении в ячейке E2, как в примере ниже, формула =В.В;A:C;2;ЛОЖЬ) ранее только подыскала бы ИД в ячейке A2. Однако при динамическом Excel массива формула приведет к #SPILL! поскольку Excel будет искать весь столбец, возвращать 1 048 576 результатов и Excel сетки.
Существует три простых способа решения этой проблемы:
Ссылаясь только на значения подытогов, которые вас интересуют. Этот стиль формулы возвращает динамический массив, но не работает с Excel таблицами.
Ссылаясь только на значение в той же строке, скопируйте формулу вниз. Этот традиционный стиль формул работает в таблицах,но не возвращаетдинамический массив.
Запрос на Excel неявное пересечение с помощью оператора @, а затем скопируйте формулу вниз. Этот стиль формулы работает в таблицах,но не возвращаетдинамический массив.
Формулы разлитого массива не поддерживаются в Excel таблицах. Попробуйте вынуть формулу из таблицы или преобразовать ее в диапазон (щелкните Конструктор таблиц > Инструменты > Преобразовать в диапазон).
Из-за пролитой формулы массива, который вы попытались ввести, Excel не потери памяти. Попробуйте ссылку на меньший массив или диапазон.
Пролитые формулы массива не могут пролиться в объединенные ячейки. Отодвигайте слияние ячеек с вопросом или перемещайте формулу в другой диапазон, который не пересекается с объединенными ячейками.
При выборе формулы пунктирый обтекает предполагаемый диапазон отлива.
Вы можете выбрать всплывающий элемент Ошибка и выбрать параметр Выбор ячеек, чтобы сразу же перейти к тем ячейкам, которые не должны быть заметивы. После очистки объединенных ячеек формула массива будет пролита по замечу.
Excel не распознает или не может выверять причину этой ошибки. Убедитесь, что формула содержит все аргументы, необходимые для сценария.
Дополнительные сведения
Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.
Как исправить ошибку #SPILL! ошибка
Резюме
Ошибка #SPILL возникает, когда диапазон разлива блокируется чем-то на листе. Решение обычно состоит в том, чтобы очистить зону разлива от любых препятствующих данных. См. Ниже дополнительную информацию и инструкции по устранению.
Объяснение
О разливе и # РАЗЛИВ! ошибка
С появлением в Excel динамических массивов формулы, возвращающие несколько значений, «переносят» эти значения непосредственно на рабочий лист. Прямоугольник, в котором заключены значения, называется «диапазоном разлива». При изменении данных диапазон разлива будет расширяться или сокращаться по мере необходимости. Вы можете увидеть добавленные новые значения или исчезновение существующих.
Видео: Разлив и дальность разлива
Ошибка #SPILL возникает, когда диапазон разлива блокируется чем-то на листе. Иногда этого ожидают. Например, вы ввели формулу, ожидая, что она разразится, но существующие данные на листе мешают. Решение состоит в том, чтобы просто очистить зону разлива от любых мешающих данных.
Однако иногда ошибка может быть неожиданной и поэтому сбивать с толку. Прочтите ниже, как может быть вызвана эта ошибка и что вы можете сделать для ее устранения.
Поведение при разливе является естественным
Важно понимать, что поведение разлива является автоматическим и естественным. В динамическом Excel (в настоящее время только в Office 365 Excel) любая формула, даже простая формула без функций, может сказаться на результатах. Несмотря на то, что есть способы запретить формуле возвращать несколько результатов, отключение самого разлива с помощью глобального параметра невозможно.
Точно так же в Excel нет возможности «отключить ошибки #SPILL». Чтобы исправить ошибку #SPILL, вам необходимо изучить и устранить основную причину проблемы.
Это самый простой для решения случай. Формула должна содержать несколько значений, но вместо этого возвращает #SPILL! потому что что-то мешает. Чтобы устранить ошибку, выберите любую ячейку в диапазоне разлива, чтобы видеть ее границы. Затем либо переместите данные блокировки в новое место, либо удалите данные полностью. Обратите внимание, что ячейки в диапазоне разлива должны быть пустыми, поэтому обратите внимание на ячейки, содержащие невидимые символы, например пробелы.
На приведенном ниже экране «x» блокирует диапазон разлива:
После удаления символа «x» функция UNIQUE обычно выдаёт результаты:
До появления динамических массивов Excel молча применял поведение, называемое «неявным пересечением», чтобы гарантировать, что определенные формулы, которые могут возвращать несколько результатов, возвращают только один результат. В Excel с нединамическими массивами эти формулы возвращают нормальный результат без ошибок. Однако в некоторых случаях та же формула, введенная в Dynamic Excel, может вызвать ошибку #SPILL. Например, на экране ниже ячейка D5 содержит скопированную формулу:
Эта формула не вызовет ошибки, скажем, в Excel 2016, поскольку неявное пересечение не позволит формуле возвращать несколько результатов. Однако в Dynamic Excel формула автоматически возвращает несколько результатов на рабочий лист, которые врезаются друг в друга, поскольку формула копируется из D5: D10.
С этим изменением каждая формула снова возвращает один результат, и ошибка #SPILL исчезает.
Примечание. Это частично объясняет, почему вы можете внезапно увидеть символ «@» в формулах, созданных в более ранних версиях Excel. Это сделано для сохранения совместимости. Поскольку формулы в более ранних версиях Excel не могут быть разделены на несколько ячеек, добавляется символ @, чтобы обеспечить такое же поведение при открытии формулы в динамическом Excel.
В динамическом Excel эта единственная формула передаст результаты в диапазон D5: D10, как показано на снимке экрана ниже:
Обратите внимание, что нет необходимости использовать абсолютную ссылку.
How to fix the #SPILL! error
A #SPILL error occurs when a spill range is blocked by something on the worksheet. The solution is usually to clear the spill range of any obstructing data. See below for more information and steps to resolve.
About spilling and the #SPILL! error
With the introduction of Dynamic Arrays in Excel, formulas that return multiple values «spill» these values directly onto the worksheet. The rectangle that encloses the values is called the «spill range». When data changes, the spill range will expand or contract as needed. You might see new values added, or existing values disappear.
A #SPILL error occurs when a spill range is blocked by something on the worksheet. Sometimes this is expected. For example, you have entered a formula, expecting it to spill, but existing data in the worksheet is in the way. The solution is just to clear the spill range of any obstructing data.
Sometimes however the error might be unexpected and therefore confusing. Read below for how this error might be caused, and what you can do to resolve.
Spill behavior is native
It’s important to understand that spill behavior is automatic and native. In Dynamic Excel (currently Office 365 Excel only) any formula, even a simple formula without functions, can spill results. Although there are ways to stop a formula from returning multiple results, spilling itself can’t be disabled with a global setting.
Similarly, there is no option in Excel to «disable #SPILL errors. To fix a #SPILL error, you’ll have to investigate and resolve the root cause of the problem.
This is the simplest case to resolve. The formula should spill multiple values, but instead it returns #SPILL! because something is in the way. To resolve the error, select any cell in the spill range so you can see its boundaries. Then either move the blocking data to a new location, or delete the data altogether. Note that cells in the spill range must be empty, so pay attention to cells that contain invisible characters, like spaces.
In the screen below, the «x» is blocking the spill range:
One the «x» is removed, the UNIQUE function spills results normally:
Before Dynamic Arrays, Excel silently applied a behavior called «implicit intersection» to ensure that certain formulas with the potential to return multiple results only returned a single result. In non-dynamic array Excel, these formulas return a normal looking result with no error. However, in certain cases the same formula entered in Dynamic Excel may generate a #SPILL error. For example, in the screen below, cell D5 contains this formula, copied down:
This formula wouldn’t throw an error in, say Excel 2016 because implicit intersection would prevent the formula from returning multiple results. However, in Dynamic Excel, the formula automatically returns spill multiple results onto to the worksheet, and which crash into each other, since the formula is copied down from D5:D10.
One solution is to use the @ character to enable implicit intersection like this:
With this change, each formula returns a single result again and the #SPILL error disappears.
Note: this partially explains why you might suddenly see the «@» character appear in formulas created in older versions of Excel. This is done to maintain compatibility. Since formulas in older versions of Excel can’t spill into multiple cells, the @ is added to ensure the same behavior when the formula is opened in Dynamic Excel.
Another (better) way to fix the #SPILL error shown above is to use a native dynamic array formula in D5 like this:
In Dynamic Excel, this single formula will spill results into the range D5:D10, as seen in the screenshot below:
Note there is no need to use an absolute reference.
Ошибки #ПЕРЕНОС! ошибка — выходит за границу листа
Формула с пролитой массивом, в который вы попытались ввести формулу, выходит за пределы диапазона. Попробуйте еще раз с небольшим диапазоном или массивом.
В следующем примере при перемещении формулы в ячейку F1 ошибка будет исправлена, и формула будет переносима правильно.
Распространенные причины: полные ссылки на столбцы
При создании формул в lookup_value в них часто неправильно засоряются. Перед динамическим массивом Приложение 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.
Существует три простых способа решения этой проблемы:
Ссылаясь только на значения подпапок, которые вас интересуют. Этот стиль формулы возвращает динамический массив, но не работает с таблицами Excel.
Ссылаясь только на значение в той же строке, скопируйте формулу вниз. Этот традиционный стиль формул работает в таблицах,но не возвращаетдинамический массив.
=В ПРОСМОТР( A2;A:C;2;ЛОЖЬ)
Запрос на выполнение неявного пересечения с помощью оператора @ и копирование формулы вниз. Этот стиль формулы работает в таблицах,но не возвращаетдинамический массив.
Дополнительные сведения
Вы всегда можете задать вопрос специалисту Excel Tech Community, попросить помощи в сообществе Answers community, а также предложить новую функцию или улучшение на веб-сайте Excel User Voice.