Ошибки в Excel
Если Excel не может правильно оценить формулу или функцию рабочего листа; он отобразит значение ошибки – например, #ИМЯ?, #ЧИСЛО!, #ЗНАЧ!, #Н/Д, #ПУСТО!, #ССЫЛКА! – в ячейке, где находится формула. Разберем типы ошибок в Excel, их возможные причины, и как их устранить.
Ошибка #ИМЯ?
Ошибка #ИМЯ появляется, когда имя, которое используется в формуле, было удалено или не было ранее определено.
Причины возникновения ошибки #ИМЯ?:
- Если в формуле используется имя, которое было удалено или не определено.
Ошибки в Excel – Использование имени в формуле
Устранение ошибки: определите имя. Как это сделать описано в этой статье.
- Ошибка в написании имени функции:
Ошибки в Excel – Ошибка в написании функции ПОИСКПОЗ
Устранение ошибки: проверьте правильность написания функции.
- В ссылке на диапазон ячеек пропущен знак двоеточия (:).
Ошибки в Excel – Ошибка в написании диапазона ячеек
Устранение ошибки: исправьте формулу. В вышеприведенном примере это =СУММ(A1:A3).
- В формуле используется текст, не заключенный в двойные кавычки. Excel выдает ошибку, так как воспринимает такой текст как имя.
Ошибки в Excel – Ошибка в объединении текста с числом
Устранение ошибки: заключите текст формулы в двойные кавычки.
Ошибки в Excel – Правильное объединение текста
Ошибка #ЧИСЛО!
Ошибка #ЧИСЛО! в Excel выводится, если в формуле содержится некорректное число. Например:
- Используете отрицательное число, когда требуется положительное значение.
Ошибки в Excel – Ошибка в формуле, отрицательное значение аргумента в функции КОРЕНЬ
Устранение ошибки: проверьте корректность введенных аргументов в функции.
- Формула возвращает число, которое слишком велико или слишком мало, чтобы его можно было представить в Excel.
Ошибки в Excel – Ошибка в формуле из-за слишком большого значения
Устранение ошибки: откорректируйте формулу так, чтобы в результате получалось число в доступном диапазоне Excel.
Ошибка #ЗНАЧ!
Данная ошибка Excel возникает в том случае, когда в формуле введён аргумент недопустимого значения.
Причины ошибки #ЗНАЧ!:
- Формула содержит пробелы, символы или текст, но в ней должно быть число. Например:
Ошибки в Excel – Суммирование числовых и текстовых значений
Устранение ошибки: проверьте правильно ли заданы типы аргументов в формуле.
- В аргументе функции введен диапазон, а функция предполагается ввод одного значения.
Ошибки в Excel – В функции ВПР в качестве аргумента используется диапазон, вместо одного значения
Устранение ошибки: укажите в функции правильные аргументы.
- При использовании формулы массива нажимается клавиша Enter и Excel выводит ошибку, так как воспринимает ее как обычную формулу.
Устранение ошибки: для завершения ввода формулы используйте комбинацию клавиш Ctrl+Shift+Enter .
Ошибки в Excel – Использование формулы массива
Ошибка #ССЫЛКА
В случае если формула содержит ссылку на ячейку, которая не существует или удалена, то Excel выдает ошибку #ССЫЛКА.
Ошибки в Excel – Ошибка в формуле, из-за удаленного столбца А
Устранение ошибки: измените формулу.
Ошибка #ДЕЛ/0!
Данная ошибка Excel возникает при делении на ноль, то есть когда в качестве делителя используется ссылка на ячейку, которая содержит нулевое значение, или ссылка на пустую ячейку.
Ошибки в Excel – Ошибка #ДЕЛ/0!
Устранение ошибки: исправьте формулу.
Ошибка #Н/Д
Ошибка #Н/Д в Excel означает, что в формуле используется недоступное значение.
Причины ошибки #Н/Д:
- При использовании функции ВПР, ГПР, ПРОСМОТР, ПОИСКПОЗ используется неверный аргумент искомое_значение:
Ошибки в Excel – Искомого значения нет в просматриваемом массиве
Устранение ошибки: задайте правильный аргумент искомое значение.
- Ошибки в использовании функций ВПР или ГПР.
Устранение ошибки: см. раздел посвященный ошибкам функции ВПР
- Ошибки в работе с массивами: использование не соответствующих размеров диапазонов. Например, аргументы массива имеют меньший размер, чем результирующий массив:
Ошибки в Excel – Ошибки в формуле массива
Устранение ошибки: откорректируйте диапазон ссылок формулы с соответствием строк и столбцов или введите формулу массива в недостающие ячейки.
- В функции не заданы один или несколько обязательных аргументов.
Ошибки в Excel – Ошибки в формуле, нет обязательного аргумента
Устранение ошибки: введите все необходимые аргументы функции.
Ошибка #ПУСТО!
Ошибка #ПУСТО! в Excel возникает когда, в формуле используются непересекающиеся диапазоны.
Ошибки в Excel – Использование в формуле СУММ непересекающиеся диапазоны
Устранение ошибки: проверьте правильность написания формулы.
Ошибка ####
Причины возникновения ошибки
- Ширины столбца недостаточно, чтобы отобразить содержимое ячейки.
Ошибки в Excel – Увеличение ширины столбца для отображения значения в ячейке
Устранение ошибки: увеличение ширины столбца/столбцов.
- Ячейка содержит формулу, которая возвращает отрицательное значение при расчете даты или времени. Дата и время в Excel должны быть положительными значениями.
Ошибки в Excel – Разница дат и часов не должна быть отрицательной
Устранение ошибки: проверьте правильность написания формулы, число дней или часов было положительным числом.
Функция ПОИСКПОЗ() в EXCEL
Функция ПОИСКПОЗ( ) , английский вариант MATCH(), возвращает позицию значения в диапазоне ячеек. Например, если в ячейке А10 содержится значение «яблоки», то формула =ПОИСКПОЗ («яблоки»;A9:A20;0) вернет 2, т.е. искомое значение «яблоки» содержится во второй ячейке диапазона A9:A20 : А9 — первая ячейка (предполагается, что в ней не содержится значение «яблоки»), А10 — вторая, А11 — третья и т.д. (подсчет позиции производится от верхней ячейки) .
Функция ПОИСКПОЗ() возвращает позицию искомого значения, а не само значение. Например: ПОИСКПОЗ(«б»;<"а";"б";"в";"б">;0) возвращает число 2 — относительную позицию буквы «б» в массиве <"а";"б";"в";"б">. Позиция второй буквы «б» будет проигнорирована, функция вернет позицию только первой буквы. О том как вернуть ВСЕ позиции искомого значения читайте ниже в разделе Поиск позиций ВСЕХ текстовых значений, удовлетворяющих критерию .
Синтаксис функции
ПОИСКПОЗ ( искомое_значение ; просматриваемый_массив ; тип_сопоставления)
Искомое_значение — значение, используемое при поиске значения в просматриваемом_массиве . Искомое_значение может быть значением (числом, текстом или логическим значением (ЛОЖЬ или ИСТИНА)) или ссылкой на ячейку, содержащую число, текст или логическое значение.
Просматриваемый_массив — непрерывный диапазон ячеек, возможно, содержащих искомые значения. Просматриваемый_массив может быть только одностолбцовым диапазоном ячеек, например А9:А20 или диапазоном, расположенным в одной строке, например, А2:Е2 . Таким образом формула =ПОИСКПОЗ(«слива»;A30:B33;0) работать не будет (выдаст ошибку #Н/Д), так как Просматриваемый_массив представляет собой диапазон ячеек размещенный одновременно в нескольких столбцах и нескольких ячейках.
Тип_сопоставления — число -1, 0 или 1. Тип_сопоставления указывает, как MS EXCEL сопоставляет искомое_значение со значениями в аргументе просматриваемый_массив.
- Если тип_сопоставления равен 0, то функция ПОИСКПОЗ() находит первое значение, которое в точности равно аргументу искомое_значение . Просматриваемый_массив может быть не упорядочен.
- Если тип_сопоставления равен 1, то функция ПОИСКПОЗ() находит наибольшее значение, которое меньше либо равно, чем искомое_значение . Просматриваемый_массив должен быть упорядочен по возрастанию: . -2, -1, 0, 1, 2, . A-Z, ЛОЖЬ, ИСТИНА. Если тип_сопоставления опущен, то предполагается, что он равен 1.
- Если тип_сопоставления равен -1, то функция ПОИСКПОЗ() находит наименьшее значение, которое больше либо равно чем искомое_значение . Просматриваемый_массив должен быть упорядочен по убыванию: ИСТИНА, ЛОЖЬ, Z-A, . 2, 1, 0, -1, -2, . и так далее.
Функция ПОИСКПОЗ() не различает РеГИстры при сопоставлении текстов.
Если функция ПОИСКПОЗ() не находит соответствующего значения, то возвращается значение ошибки #Н/Д.
Поиск позиции в массивах с текстовыми значениями
Произведем поиск позиции в НЕ сортированном списке текстовых значений (диапазон B7:B13 )
Столбец Позиция приведен для наглядности и не влияет на вычисления.
Формула для поиска позиции значения Груши: =ПОИСКПОЗ(«груши»;B7:B13;0)
Формула находит первое значение сверху и выводит его позицию в диапазоне, второе значение Груши учтено не будет.
Чтобы найти номер строки, а не позиции в искомом диапазоне, можно записать следующую формулу: =ПОИСКПОЗ(«груши»;B7:B13;0)+СТРОКА($B$6)
Если искомое значение не обнаружено в списке, то будет возвращено значение ошибки #Н/Д. Например, формула =ПОИСКПОЗ(«грейпфрут»;B7:B13;0) вернет ошибку, т.к. значения «грейпфрут» в диапазоне ячеек B7:B13 нет.
В файле примера можно найти применение функции при поиске в горизонтальном массиве.
Поиск позиции в массиве констант
Поиск позиции можно производить не только в диапазонах ячеек, но и в массивах констант . Например, формула =ПОИСКПОЗ(«груши»;<"яблоки";"ГРУШИ";"мандарины">;0) вернет значение 2.
Поиск позиции с использованием подстановочных знаков
Если искомое значение точно не известно, то с помощью подстановочных знаков можно задать поиск по шаблону, т.е. искомое_значение может содержать знаки шаблона: звездочку (*) и знак вопроса (?). Звездочка соответствует любой последовательности знаков, знак вопроса соответствует любому одиночному знаку.
Предположим, что имеется перечень товаров и мы не знаем точно как записана товарная позиция относящаяся к яблокам: яблоки или яблоко .
В качестве критерия можно задать «яблок*» и формула =ПОИСКПОЗ(«яблок*»;B53:B62;0) вернет позицию текстового значения, начинающегося со слова яблок (если она есть в списке).
Подстановочные знаки следует использовать только для поиска позиции текстовых значений и Типом сопоставления = 0 (третий аргумент функции).
Поиск позиций ВСЕХ текстовых значений, удовлетворяющих критерию
Функция ПОИСКПОЗ() возвращает только одно значение. Если в списке присутствует несколько значений, удовлетворяющих критерию, то эта функция не поможет.
Рассмотрим список с повторяющимися значениями в диапазоне B66:B72 . Найдем все позиции значения Груши .
Значение Груши находятся в позициях 2 и 5 списка. С помощью формулы массива
можно найти все эти позиции. Для этого необходимо выделить несколько ячеек (расположенных вертикально), в Строке формул ввести вышеуказанную формулу и нажать CTRL+SHIFT+ENTER . В позициях, в которых есть значение Груши будет выведено соответствующее значение позиции, в остальных ячейках быдет выведен 0.
можно отсортировать найденные позиции, чтобы номера найденных позиций отображались в первых ячейках (см. файл примера ).
Поиск позиции в массивах с Числами
1. Произведем поиск позиции в НЕ сортированном списке числовых значений (диапазон B8:B14 )
Столбец Позиция приведен для наглядности и не влияет на вычисления.
Найдем позицию значения 30 с помощью формулы =ПОИСКПОЗ(30;B8:B14;0)
Формула ищет точное значение 30. Если в списке его нет, то будет возвращена ошибка #Н/Д.
2. Произведем поиск позиции в отсортированном по возрастанию списке числовых значений (диапазон B31:B37 )
Сортированные списки позволяют искать не только точные значения (их позицию), но и позицию ближайшего значения. Например, в списке на картинке ниже нет значения 45, но можно найти позицию наибольшего значения, которое меньше либо равно, чем искомое значение, т.е. позицию значения 40.
Это можно сделать с помощью формулы =ПОИСКПОЗ(45;B31:B37;1)
Обратите внимание, что тип сопоставления =1 (третий аргумент функции).
3. Поиск позиции в списке отсортированном по убыванию выполняется аналогично, но с типом сопоставления = -1. В этом случае функция ПОИСКПОЗ() находит наименьшее значение, которое больше либо равно чем искомое значение.
Функции ПОИСКПОЗ() и ИНДЕКС()
Функции ПОИСКПОЗ() и ИНДЕКС() часто используются вместе, т.к. позволяют по найденной позиции в одном диапазоне вывести соответствующее значение из другого диапазона. Рассмотрим пример.
Найдем количество заданного товара на определенном складе. Для этого используем формулу
В файле примера , соответствующий столбец и строка выделены с помощью Условного форматирования .
СОВЕТ: Подробнее о поиске позиций можно прочитать в соответствующем разделе сайта: Поиск позиции .
С помощью функций ПОИСКПОЗ() и ИНДЕКС() можно заменить функцию ВПР() , об этом читайте в статье о функции ВПР() .
Проблемы с возвратом значения функции ПОИСКПОЗ в ячейку excel
Мне необходимо перевести таблицу из вертикального формата (вся информация о наблюдении находится в одной строке(например, национальность — год рождения — средний вес) в горизонтальный (напр. ось Х — национальность, У — год рождения, в таблице — средний вес). «Шапка» по обеим осям у меня заполнена. Нашел на англоязычном форуме подробное решение этого вопроса, вот ссылка http://www.exceltactics.com/vlookup-multiple-criteria-using-index-match/ Index = Индекс, Match = Поискпоз в русской версии. Однако функция «поискпоз» выдаём мне #Н/Д. Что самое интересное, если открыть подробную информацию о функции, значение отображается, но в ячейке упорно остаётся #Н/Д. Скриншоты прилагаются. В них отдельно выписана функция ПОИСКПОЗ, так как ошибка именно в ней
Вы вводите формулу, использующую массивы, поэтому для ввода формулы используйте не клавишу ENTER а сочетание клавиш CTRL+SHIFT+ENTER