Возникновение ошибок вычислений при вы

Материал из MachineLearning.

Перейти к: навигация, поиск

Содержание

  • 1 Введение
    • 1.1 Постановка вопроса. Виды погрешностей
  • 2 Виды мер точности
  • 3 Предельные погрешности
  • 4 Погрешности округлений при представлении чисел в компьютере
  • 5 Погрешности арифметических операций
  • 6 Погрешности вычисления функций
  • 7 Числовые примеры
  • 8 Список литературы
  • 9 См. также

Введение

Постановка вопроса. Виды погрешностей

Процесс исследования исходного объекта методом математического моделирования и вычислительного эксперимента неизбежно носит приближенный характер, так как на каждом этапе вносятся погрешности. Построение математической модели связано с упрощением исходного явления, недостаточно точным заданием коэффициентов уравнения и других входных данных. По отношению к численному методу, реализующему данную математическую модель, указанные погрешности являются неустранимыми, поскольку они неизбежны в рамках данной модели.

При переходе от математической модели к численному методу возникают погрешности, называемые погрешностями метода. Они связаны с тем, что всякий численный метод воспроизводит исходную математическую модель приближенно. Наиболее типичными погрешностями метода являются погрешность дискретизации и погрешность округления.
При построении численного метода в качестве аналога исходной математической задачи обычно рассматривается её дискретная модель. Разность решений дискретизированной задачи и исходной называется погрешностью дискретизации. Обычно дискретная модель зависит от некоторого параметра (или их множества) дискретизации, при стремлении которого к нулю должна стремиться к нулю и погрешность дискретизации.
Дискретная модель представляет собой систему большого числа алгебраических уравнений. Для её решения используется тот или иной численный алгоритм. Входные данные этой системы, а именно коэффициенты и правые части, задаются в ЭВМ не точно, а с округлением. В процессе работы алгоритма погрешности округления обычно накапливаются, и в результате, решение, полученное на ЭВМ, будет отличаться от точного решения дискретизированной задачи. Результирующая погрешность называется погрешностью округления (вычислительной погрешностью). Величина этой погрешности определяется двумя факторами: точностью представления вещественных чисел в ЭВМ и чувствительностью данного алгоритма к погрешностям округления.

Итак, следует различать погрешности модели, дискретизации и округления. В вопросе преобладания какой-либо погрешности ответ неоднозначен. В общем случае нужно стремиться, чтобы все погрешности имели один и тот же порядок. Например, нецелесообразно пользоваться разностными схемами, имеющими точность 10−6, если коэффициенты исходных уравнений задаются с точностью 10−2.

Виды мер точности

Мерой точности вычислений являются абсолютные и относительные погрешности. Абсолютная погрешность определяется формулой

Delta(tilde a)=|tilde a-a|,

где tilde a – приближение к точному значению a.
Относительная погрешность определяется формулой

delta(tilde a)=frac{|tilde a-a|}{a}.

Относительная погрешность часто выражается в процентах. Абсолютная и относительная погрешности тесно связаны с понятием верных значащих цифр. Значащими цифрами числа называют все цифры в его записи, начиная с первой ненулевой цифры слева. Например, число 0,000129 имеет три значащих цифры. Значащая цифра называется верной, если абсолютная погрешность числа не превышает половины веса разряда, соответствующего этой цифре. Например, tilde a=9348, абсолютная погрешность Delta(tilde a)=15. Записывая число в виде

9348=9cdot10^3+3cdot10^2+4cdot10^1+8cdot10^0,

имеем 0,5cdot10^1<Delta(tilde a)<0,5cdot10^2, следовательно, число имеет две верных значащих цифр (9 и 3).

В общем случае абсолютная погрешность должна удовлетворять следующему неравенству:

Delta(tilde a)<0,5cdot10^{m-n+1} ,

где m — порядок (вес) старшей цифры, n — количество верных значащих цифр.
В рассматриваемом примере Delta(tilde a)le0,5cdot10^{3-2+1}le0,5cdot10^2=50.

Относительная погрешность связана с количеством верных цифр приближенного числа соотношением:

delta(tilde a)lefrac{Delta(tilde a)}{alpha_m}10^mlefrac{10^{m-n+1}}{alpha_m10^m}lefrac{1}{alpha_m10^{n-1}},

где alpha_m — старшая значащая цифра числа.

Для двоичного представления чисел имеем delta(tilde a)le2^{-n}.

Тот факт, что число tilde a является приближенным значением числа a с абсолютной погрешностью Delta(tilde a), записывают в виде

a=tilde apmDelta(tilde a),

причем числа tilde a и Delta(tilde a) записываются с одинаковым количеством знаков после запятой, например, a=2,347pm0,002 или a=2,347pm2cdot10^{-3}.

Запись вида

a=tilde a(1pmdelta(tilde a))

означает, что число tilde a является приближенным значение числа a с относительной погрешностью delta(tilde a).

Так как точное решение задачи как правило неизвестно, то погрешности приходится оценивать через исходные данные и особенности алгоритма. Если оценка может быть вычислена до решения задачи, то она называется априорной. Если оценка вычисляется после получения приближенного решения задачи, то она называется апостериорной.

Очень часто степень точности решения задачи характеризуется некоторыми косвенными вспомогательными величинами. Например точность решения системы алгебраических уравнений

AX=F

характеризуется невязкой

R=F-Atilde X,

где tilde X — приближенное решение системы.
Причём невязка достаточно сложным образом связана с погрешностью решения Delta(X)=tilde X-X, причём если невязка мала, то погрешность может быть значительной.

Предельные погрешности

Пусть искомая величина a является функцией параметров t_1, ldots , t_n in Omega, qquad a* — приближенное значение a. Тогда предельной абсолютной погрешностью называется величина

D(a^*) = suplimits_{(t_1, ldots ,t_n) in Omega } left|{a(t_1, ldots ,t_n) - a^*}right| ,

Предельной относительной погрешностью называется величина D(a*)/| a*|.

Пусть  left|{t_j - t_j^*}right| le Delta (t_j^* ), qquad j = 1 div n — приближенное значение a^* = a(t_1^*, ldots ,t_n^* ). Предполагаем, что a — непрерывно дифференцируемая функция своих аргументов. Тогда, по формуле Лагранжа,

a(t_1, ldots ,t_n) - a^* = sumlimits_{j = 1}^n gamma_j (alpha )(t_j - t_j^*),

где gamma_j (alpha ) = a^{prime}_{t_j}(t_1^* + alpha (t_1 - t_1^*), ldots ,t_n^* + alpha (t_n - t_n^*)), qquad 0 le alpha le 1 .

Отсюда

left|{a(t_1, ldots ,t_n) - a^*}right| le D_1 (a^*) = sumlimits_{j = 1}^n b_j Delta (t_j^*),

где b_j = suplimits_Omega left|{a^{prime}_{t_j}(t_1, ldots ,t_n)}right|.

Можно показать, что при малых rho = sqrt{{(Delta (t_1^* ))}^2 + ldots + {(Delta (t_n^* ))}^2 } эта оценка не может быть существенно улучшена. На практике иногда пользуются грубой (линейной) оценкой

left|{a(t_1, ldots ,t_n) - a^*}right| le D_2 (a^*),

где D_2 (a^*) = sumlimits_{j = 1} left|{gamma_j (0)}right| Delta (t^*) .

Несложно показать, что:

  1. Delta ( pm t_1^* pm , ldots , pm t_n^*) = Delta (t_1^* ) + ldots + Delta (t_n^* ) — предельная погрешность суммы или разности равна сумме предельных погрешностей.
  2. delta (t_1^* cdots t_m^* cdot d_1^{* - 1} cdots d_m^{* - 1} ) = delta (t_1^* ) + ldots + delta (t_m^*) + delta (d_1^*) + ldots + delta (d_n^*) — предельная относительная погрешность произведения или частного приближенного равна сумме предельных относительных погрешностей.

Погрешности округлений при представлении чисел в компьютере

Одним из основных источников вычислительных погрешностей является приближенное представление чисел в компьютере, обусловленное конечностью разрядной сетки (см. Международный стандарт представления чисел с плавающей точкой в ЭВМ). Число a, не представимое в компьютере, подвергается округлению, т. е. заменяется близким числом tilde a, представимым в компьютере точно.
Найдем границу относительной погрешности представления числа с плавающей точкой. Допустим, что применяется простейшее округление – отбрасывание всех разрядов числа, выходящих за пределы разрядной сетки. Система счисления – двоичная. Пусть надо записать число, представляющее бесконечную двоичную дробь

a=underbrace{pm2^p}_{order}underbrace{left(frac{a_1}{2}+frac{a_2}{2^2}+dots+frac{a_t}{2^t}+frac{a_{t+1}}{2^{t+1}}+dotsright)}_{mantissa},

где a_j={0\1, qquad (j=1,2,...) — цифры мантиссы.
Пусть под запись мантиссы отводится t двоичных разрядов. Отбрасывая лишние разряды, получим округлённое число

tilde a=pm2^pleft(frac{a_1}{2}+frac{a_2}{2^2}+dots+frac{a_t}{2^t}right).

Абсолютная погрешность округления в этом случае равна

a-tilde a=pm2^pleft(frac{a_{t+1}}{2^{t+1}}+frac{a_{t+2}}{2^{t+2}}+dotsright).

Наибольшая погрешность будет в случае a_{t+1}=1, qquad a_{t+2}=1,, тогда

|a-tilde a|lepm2^pfrac{1}{2^{t+1}}underbrace{left(1+frac{1}{2}+frac{1}{2^2}+dotsright)}_{=2}=2^{p-t}.

Т.к. |M|ge0,5, где M — мантисса числа a, то всегда a_1=1. Тогда |a|ge2^pcdot2^{-1}=2^{p-1} и относительная погрешность равна frac{|a-tilde a|}{|a|}le2^{-t+1}. Практически применяют более точные методы округления и погрешность представления чисел равна

( 1 )

frac{|a-tilde a|}{|a|}le2^{-t},

т.е. точность представления чисел определяется разрядностью мантиссы t.
Тогда приближенно представленное в компьютере число можно записать в виде tilde a=a(1pmepsilon), где |epsilon|le2^{-t}«машинный эпсилон» – относительная погрешность представления чисел.

Погрешности арифметических операций

При вычислениях с плавающей точкой операция округления может потребоваться после выполнения любой из арифметических операций. Так умножение или деление двух чисел сводится к умножению или делению мантисс. Так как в общем случае количество разрядов мантисс произведений и частных больше допустимой разрядности мантиссы, то требуется округление мантиссы результатов. При сложении или вычитании чисел с плавающей точкой операнды должны быть предварительно приведены к одному порядку, что осуществляется сдвигом вправо мантиссы числа, имеющего меньший порядок, и увеличением в соответствующее число раз порядка этого числа. Сдвиг мантиссы вправо может привести к потере младших разрядов мантиссы, т.е. появляется погрешность округления.

Округленное в системе с плавающей точкой число, соответствующее точному числу x, обозначается через fl(x) (от англ. floating – плавающий). Выполнение каждой арифметической операции вносит относительную погрешность, не большую, чем погрешность представления чисел с плавающей точкой (1). Верна следующая запись:

fl(abox b)=abox b(1pmepsilon),

где box — любая из арифметических операций, |epsilon|le2^{-t}.

Рассмотрим трансформированные погрешности арифметических операций. Арифметические операции проводятся над приближенными числами, ошибка арифметических операций не учитывается (эту ошибку легко учесть, прибавив ошибку округления соответствующей операции к вычисленной ошибке).

Рассмотрим сложение и вычитание приближенных чисел. Абсолютная погрешность алгебраической суммы нескольких приближенных чисел равна сумме абсолютных погрешностей слагаемых.

Если сумма точных чисел равна

S=a_1+a_2+dots+a_n,

сумма приближенных чисел равна

tilde S=a_1+Delta(a_1)+a_2+Delta(a_2)+dots+a_n+Delta(a_n),

где Delta(a_i), qquad i=1,2,...,n— абсолютные погрешности представления чисел.

Тогда абсолютная погрешность суммы равна

Delta(S)=Delta(a_1)+Delta(a_2)+dots+Delta(a_n).

Относительная погрешность суммы нескольких чисел равна

( 2 )

delta(S)=frac{Delta(S)}{S}=frac{a_1}{S}left(frac{Delta(a_1)}{a_1}right)+frac{a_2}{S}left(frac{Delta(a_2)}{a_2}right)+dots=frac{a_1delta(a_1)+a_2delta(a_2)+dots}{S},

где delta(a_i), qquad i=1,2,...,n — относительные погрешности представления чисел.

Из (2) следует, что относительная погрешность суммы нескольких чисел одного и того же знака заключена между наименьшей и наибольшей из относительных погрешностей слагаемых:

min quad delta(a_k)ledelta(S)le max quad delta(a_k), qquad k=1,2,...,n, quad a_k>0.

При сложении чисел разного знака или вычитании чисел одного знака относительная погрешность может быть очень большой (если числа близки между собой). Так как даже при малых Delta(a_i) величина S может быть очень малой. Поэтому вычислительные алгоритмы необходимо строить таким образом, чтобы избегать вычитания близких чисел.

Необходимо отметить, что погрешности вычислений зависят от порядка вычислений. Далее будет рассмотрен пример сложения трех чисел.

S=x_1+x_2+x_3,
tilde S_1=(x_1+x_2)(1+delta_1),

( 3 )

tilde S=(tilde S_1+x_3)(1+delta_2)=(x_1+x_2)(1+delta_1)(1+delta_2)+x_3(1+delta_2).

При другой последовательности действий погрешность будет другой:

tilde S_1=(x_3+x_2)(1+delta_1),
tilde S=(x_3+x_2)(1+delta_1)(1+delta_2)+x_1(1+delta_2).

Из (3) видно, что результат выполнения некоторого алгоритма, искаженный погрешностями округлений, совпадает с результатом выполнения того же алгоритма, но с неточными исходными данными. Т.е. можно применять обратный анализ: свести влияние погрешностей округления к возмущению исходных данных. Тогда вместо (3) будет следующая запись:

tilde S=tilde x_1+tilde x_2+tilde x_3,

где tilde x_1=x_1(1+delta_1)(1+delta_2), quad tilde x_2=x_2(1+delta_1)(1+delta_2), quad tilde x_3=x_3(1+delta_2).

При умножении и делении приближенных чисел складываются и вычитаются их относительные погрешности.

S=a_1cdot a_2,
tilde S=a_1cdot a_2(1+delta(a_1))(1+delta(a_2))a_1cdot a_2(1+delta(a_1)+delta(a_2)),

с точностью величин второго порядка малости относительно delta.

Тогда delta(S)=delta(a_1)+delta(a_2).

Если S=frac{a_1}{a_2}, то Delta(S)=frac{a_1(1+delta_1)}{a_2(1+delta_2)}-frac{a_1}{a_2}=frac{a_1(delta_1-delta_2)}{a_2(1+delta_2)}approx frac{a_1}{a_2}(delta_1-delta_2), qquad delta(S)  delta_1-delta_2.

При большом числе n арифметических операций можно пользоваться приближенной статистической оценкой погрешности арифметических операций, учитывающей частичную компенсацию погрешностей разных знаков:

delta_Sigma approx delta_{fl} quad sqrt{n},

где delta_Sigma – суммарная погрешность, |delta_{fl}|leepsilon – погрешность выполнения операций с плавающей точкой, epsilon – погрешность представления чисел с плавающей точкой.

Погрешности вычисления функций

Рассмотрим трансформированную погрешность вычисления значений функций.

Абсолютная трансформированная погрешность дифференцируемой функции y=f(x), вызываемая достаточно малой погрешностью аргумента Delta(x), оценивается величиной Delta(y)=|f'(x)|Delta(x).

Если f(x)>0, то delta(y)=frac{|f'(x)|}{f(x)}Delta(x)=left|(ln(f(x)))'right|cdotDelta(x).

Абсолютная погрешность дифференцируемой функции многих аргументов y=f(x_1, x_2, ..., x_n), вызываемая достаточно малыми погрешностями Delta(x_1), Delta(x_2), ..., Delta(x_n) аргументов x_1, x_2, ...,x_n оценивается величиной:

Delta(y)=sumlimits_{i=1}^nleft|frac{partial f}{partial x_i}right|Delta(x_i).

Если f(x_1,x_2,...,x_n)>0, то delta(y)=sumlimits_{i=1}^nfrac{1}{f}cdotleft|frac{partial f}{partial x_i}right|cdotDelta(x_i)=sumlimits_{i=1}^{n}left|frac{partial l_n(f)}{partial x_i}right|Delta(x_i).

Практически важно определить допустимую погрешность аргументов и допустимую погрешность функции (обратная задача). Эта задача имеет однозначное решение только для функций одной переменной y=f(x), если f(x) дифференцируема и f'(x)not=0:

Delta(x)=frac{1}{|f'(x)|}Delta(y).

Для функций многих переменных задача не имеет однозначного решения, необходимо ввести дополнительные ограничения. Например, если функция y=f(x_1,x_2,...,x_n) наиболее критична к погрешности Delta(x_i), то:

Delta(x_i)=frac{Delta(y)}{left|frac{partial f}{partial x_i}right|}qquad (погрешностью других аргументов пренебрегаем).

Если вклад погрешностей всех аргументов примерно одинаков, то применяют принцип равных влияний:

Delta(x_i)=frac{Delta(y)}{nleft|frac{partial f}{partial x_i}right|},qquad i=overline{1,n}.

Числовые примеры

Специфику машинных вычислений можно пояснить на нескольких элементарных примерах.

ПРИМЕР 1. Вычислить все корни уравнения

x^4 - 4x^3 + 8x^2 - 16x + 15.underbrace{99999999}_8 = {(x - 2)}^4 - 10^{- 8} = 0.

Точное решение задачи легко найти:

(x - 2)^2  =  pm 10^{- 4},
x_1= 2,01;  x_2= 1,99;  x_{3,4}= 2 pm 0,01i.

Если компьютер работает при delta _M > 10^{ - 8}, то свободный член в исходном уравнении будет округлен до 16,0 и, с точки зрения представления чисел с плавающей точкой, будет решаться уравнение (x-2)^4= 0, т.е. x_{1,2,3,4} = 2, что, очевидно, неверно. В данном случае малые погрешности в задании свободного члена approx10^{-8} привели, независимо от метода решения, к погрешности в решении approx10^{-2}.

ПРИМЕР 2. Решается задача Коши для обыкновенного дифференциального уравнения 2-го порядка:

u''(t) = u(t), qquad u(0) = 1, qquad u'(0) = - 1.

Общее решение имеет вид:

u(t) = 0,5[u(0) + u'(0)]e^t  + 0,5[u(0) - u'(0)]e^{- t}.

При заданных начальных данных точное решение задачи: u(x) = e^{-t}, однако малая погрешность delta в их задании приведет к появлению члена delta e^t, который при больших значениях аргумента может существенно исказить решение.

ПРИМЕР 3. Пусть необходимо найти решение обыкновенного дифференциального уравнения:

stackrel{cdot}{u} = 10u,qquad u = u(t),\ u(t_0) = u_0,qquad t in [0,1].

Его решение: u(t) = u_0e^{10(t - t_0 )}, однако значение u(t_0) известно лишь приближенно: u(t_0) approx u_0^*, и на самом деле u^*(t) = u_0^*e^{10(t - t_0)}.

Соответственно, разность u* - u будет:

u^* - u = (u_0^* - u_0)e^{10(t - t_0)}.

Предположим, что необходимо гарантировать некоторую заданную точность вычислений epsilon > 0 всюду на отрезке t in [0,1]. Тогда должно выполняться условие:

|{u^*(t) - u(t)}| le varepsilon.

Очевидно, что:

maxlimits_{t in [0,1]} |{u^*(t) - u(t)}| = |{u*(1) - u(1)}| = |{u_0^* - u_0}|e^{10(1 - t_0)}.

Отсюда можно получить требования к точности задания начальных данных delta: qquad|u_0^* - u_0| < delta, qquad delta le varepsilon e^{ - 10} при t_0= 0.

Таким образом, требование к заданию точности начальных данных оказываются в e^{10} раз выше необходимой точности результата решения задачи. Это требование, скорее всего, окажется нереальным.

Решение оказывается очень чувствительным к заданию начальных данных. Такого рода задачи называются плохо обусловленными.

ПРИМЕР 4. Решением системы линейных алгебраических уравнений (СЛАУ):

left{ begin{array}{l} u + 10v = 11, \ 100u + 1001v = 1101; \ end{array} right.

является пара чисел {1, quad 1}.

Изменив правую часть системы на 0,01, получим возмущенную систему:

left{ begin{array}{l} u + 10v = 11.01, \ 100u + 1001v = 1101; \ end{array} right.

с решением {11.01, quad 0.00}, сильно отличающимся от решения невозмущенной системы. Эта система также плохо обусловлена.

ПРИМЕР 5. Рассмотрим методический пример вычислений на модельном компьютере, обеспечивающем точность delta_M = 0,0005. Проанализируем причину происхождения ошибки, например, при вычитании двух чисел, взятых с точностью до третьей цифры после десятичной точки u = 1,001,quad v = 1,002, разность которых составляет Delta = |v_M - u_M| = 0,001.

В памяти машины эти же числа представляются в виде:

u_M = u(1 + delta_M^u), quad v_M = v(1 + delta_M^v), причем  mid delta_M^umid le delta_M и mid delta_M^vmid le delta_M.

Тогда:

u_M - u approx udelta_M^u, quad v_M - v approx vdelta_M^v.

Относительная ошибка при вычислении разности u_M - v_M будет равна:

 delta = frac{(u_M - v_M) - (u - v)}{(u - v)} = frac{(u_M - u) - (v_M - v)}{(u - v)} = frac{delta_M^u - delta_M^v}{(u - v)}.

Очевидно, что  delta = left|{frac{delta_M^u - delta_M^v}{Delta }} right| le frac{2delta_M}{0,001} approx 2000delta_M = 1, т.е. все значащие цифры могут оказаться неверными.

ПРИМЕР 6. Рассмотрим рекуррентное соотношение u_{i+1} = qu_i, quad i ge 0, quad u_0 = a,quad q > 0, quad u_i > 0.

Пусть при выполнении реальных вычислений с конечной длиной мантиссы на i-м шаге возникла погрешность округления, и вычисления проводятся с возмущенным значением u_i^M = u_i + delta_i, тогда вместо u_{i+1} получим u_{i + 1}^M = q(u_i + delta_i) = u_{i + 1} + qdelta_i, т.е. delta_{i + 1} = qdelta_i,quad i = 0,1,ldots .

Следовательно, если |q| > 1, то в процессе вычислений погрешность, связанная с возникшей ошибкой округления, будет возрастать (алгоритм неустойчив). В случае mid qmid le 1 погрешность не возрастает и численный алгоритм устойчив.

Список литературы

  • А.А.Самарский, А.В.Гулин.  Численные методы. Москва «Наука», 1989.
  • http://www.mgopu.ru/PVU/2.1/nummethods/Chapter1.htm
  • http://www.intuit.ru/department/calculate/calcmathbase/1/4.html

См. также

  • Практикум ММП ВМК, 4й курс, осень 2008

Достоверность
полученной в результате моделирования
информации зависит от точности
математического описания реальной
проблемы и от погрешностей, возникающих
при решении математической задачи.
Математическая модель создается на
основании наших знаний о проблеме, при
этом учитывается возможность нахождения
неизвестных параметров модели доступными
методами. Погрешности вычислений связаны
с ошибками округлений дробных чисел и
неустойчивой работой вычислительных
алгоритмов, когда оказывается невозможным
за конечное число шагов найти решение
с приемлемой точностью.

Применение
компьютеров существенным образом
расширяет вычислительные возможности
и позволяет обращаться к таким задачам,
которые принципиально не могли быть
поставлены при вычислениях с помощью
ручки и бумаги. Однако, при этом появились
дополнительные источники возникновения
ошибок. В ручных вычислениях промежуточные
результаты непосредственно доступны
для обозрения, и процесс расчета можно
корректировать в соответствии с
получаемыми результатами. При этом
ручные вычисления обычно не бывают
длинными, тогда как машинный процесс
вычислений может состоять из миллионов
шагов. Ничтожно малые ошибки, которыми
в коротком вычислении можно было бы
пренебречь, накапливаясь в протяженном
процессе, могут приводить к разрушительным
последствиям. Кроме того, методы, вполне
удовлетворительные для малых задач,
могут быть безнадежно неэффективными
для больших задач того же типа.

Иногда
компьютерные программы не замечают
существенных ошибок, выводят информацию
об успешном завершении расчетов и
показывают полученные результаты,
которые могут существенно отличаться
от истинных. Поэтому в процессе разработки
компьютерных программ следует помнить
об источниках возникновения возможных
ошибок и предусматривать соответствующие
меры для их обнаружения и предупреждения.

В
машинных вычислениях участвуют числа
двух типов: целые числа и вещественные
числа (так называемые числа с «плавающей
запятой»). В отличие от общепринятой
арифметики с десятичной системой
исчисления работа компьютеров основана
на двоичной системе чисел, т.е. в виде
последовательностей нулей и единиц,
при этом всегда для представления любого
числа в памяти компьютера выделяется
строго ограниченное количество разрядов.
В частности, языке программирования
Турбо-Паскаль для целых чисел типа byte
выделяется
один байт машинной памяти, поэтому
переменные данного типа могут принимать
значения в диапазоне от 0 до 28-1=255.
Для хранения целых чисел типа word
и
integer
выделяются 2 байта памяти, поэтому для
типа word,
в котором могут быть представлены только
неотрицательные числа, диапазон
допустимых значений ограничен величинами
от 0 до 216-1=65535.
Числа типа integer
могут
быть положительными или отрицательными,
их диапазон ограничен значениями от
до.
Если работать с целыми числами, далекими
от границ числовой области компьютера,
то машинная арифметика дает правильные
результаты, например 5+7=12, 8-27=-19, 273=81
и т.д. Деление целых чисел снова приводит
к целому числу, а в качестве результата
операции принимается частное, а остаток
отбрасывается. Это означает, что
и т.д.

Если
результат операции над целыми числами
слишком велик или слишком мал для данного
типа переменных, то при отсутствии
контроля за превышением допустимого
диапазона результат будет заменен по
циклическому правилу. Например, если
переменным a
и b
присвоить тип byte,
переменной a
присвоить значение a=255
, а переменной b
– значение b=a+1,
то компьютер выдаст результат: b=0,
при b=a+2
получим b=1
и т.д. Если a
и b
отнести к переменным типа integer
и присвоить a=32767,
то при b=a+1
получим b=-32768,
при b=a+2

b=-32767.
Эти ошибки не будут замечены, и программа
продолжит дальнейшую работу с неверными
значениями переменных.

Если
в программе предусматривается проверка
переполнения допустимого диапазона
переменных, то при выходе значения за
пределы диапазона на экран выводится
сообщение об ошибке, а работа программы
приостанавливается.

Десятичные
числа вещественного типа с «плавающей
запятой» представляются в виде
.
Числоa
называется мантиссой, а b
– показателем. Обычно число b
целое, а у числа a
слева от десятичной запятой находится
только один знак. У обоих чисел a
и b
количество разрядов конечно, поэтому
имеется лишь конечное множество чисел
с плавающей запятой и, в частности,
существуют наибольшие и наименьшие
числа с плавающей запятой.

Если
результат операции превышает наибольшее
значение, то происходит переполнение
выделенных ячеек памяти, и работа
программы на этом прекращается. Если
результатом операции является число,
слишком близкое к нулю, то происходит
исчезновение порядка. Компьютер заменяет
результат нулем без какого-либо сообщения
об этой операции. Во многих случаях
подобная замена не приводит к появлению
заметных погрешностей в окончательном
результате, однако, иногда подобные
округления при операциях умножения и
последующего деления, сложения или
вычитания малых по абсолютной величине
чисел могут вызвать принципиальные
ошибки результатов вычислений.

Наибольшее
значение, при котором происходит
обнуление результата, называется
машинным нулем. Эта величина зависит
от типа переменных, с которыми производятся
операции, численного значения переменных
и типа компьютера. Для оценки погрешности
округления используется понятие
машинного эпсилон маш,
численно равного наименьшему числу,
которое при сложении с вещественным
числом 1 дает результат, больший чем 1.
Величину маш
можно определить с помощью следующей
программы:

Program
Nul;

var

x, eps: real{single, double, extended};

BEGIN

eps:=1;

repeat

eps:=eps/2;

x:=1+eps;

until
x<=1;

writeln(‘eps=’,eps);

readln;

END.

В
табл.1.1. приведены результаты тестирования
компьютера Pentium
с различными типами данных при операции
сложения x=A+0.

Таблица
1.1.

Результаты
вычисления машинного нуля 0

Тип
переменных

А

1

2

100

single

5,9610-8

1,1910-7

3,8210-6

real

4,5510-13

9,0510-13

2,9110-11

double

1,1110-16

2,2210-16

7,1110-15

Extended

5,4210-20

1,0810-19

3,4710-18

Наличие
машинного эпсилон проявляется следующим
образом. Например, запись вещественного
числа 0,3
в память компьютера сопряжена с ошибкой,
поскольку величина 0,3
не имеет точного двоичного представления
в системе вещественных чисел с плавающей
запятой. Поэтому сумма десяти шагов
длиной 0,3
не будет точно равна одному шагу длиной
3,0.
Подобные малые ошибки при длительных
расчетах могут накапливаться и приводить
к более заметным суммарным ошибкам.

Погрешность
представления вещественного числа в
программе локализуется в последнем
бите памяти. Более серьезные последствия
может вызвать неудачное использование
вычислительных алгоритмов.

Рассмотрим
пример вычисления значений функции
.
Эта функция может быть представлена
как сумма бесконечного ряда

. (1.1)

В
практических расчетах всегда ограничиваются
только несколькими членами ряда,
отбрасывая величины, не влияющие на
окончательный результат. В табл.1.2 и 1.3
приведены точные значения функции и
результаты вычисления с помощью ряда
различной длины для некоторых значений
параметров.

Таблица
1.2

Точные
и рассчитанные с помощью ряда значения
функции y=ex
при
представлении вещественных чисел типом
real.

X

Точное

Значение
y=ex

Длина
ряда

для
всех х

при
x0;

при
x<0.

50

100

500

50

-30

9,35810-14

8,782108

-2,58810-1

-2,58810-1

9,36010-14

-20

2,06110-9

1,047100

3,50510-5

3,50510-5

2,06110-9

-10

4,54010-5

4,54010-5

4,54010-5

4,54010-5

4,54010-5

0

1

1

1

1

1

10

2,203104

2,203104

2,203104

2,203104

2,203104

20

4,852108

4,852108

4,852108

4,852108

4,852108

30

1,0691013

1,0681013

1,0691013

1,0691013

1,0681013

В
диапазоне значений [-10,+30] при 50 членах
ряда рассчитанные по (1.1) значения
практически полностью совпадают с
точными, определенными по более сложному
алгоритму. Однако при x=-20
ошибка расчета составляет 9 порядков,
а при x=-30
— 22 порядка. Увеличение длины ряда до
100 членов снижает расхождения между
точными и расчетными значениями, но не
приводит к точному результату. Дальнейшее
увеличение длины ряда до 500 членов не
оказывает заметного влияния на результаты
расчета.

Представление
вещественных чисел типом extended
с
19-20 значащими цифрами позволяет при 100
членах ряда получить практически точное
значение для x=-20,
однако при x=-30
ошибка вычисления составляет 6 порядков.
Эта погрешность сохраняется при
дальнейшем увеличении длины ряда.

Таблица
1.3

Точные
и рассчитанные с помощью ряда значения
функции y=ex
при
представлении вещественных чисел типом
extended.

X

Точное

Значение
y=ex

Длина
ряда

для
всех х

при
x0;

при
x<0.

50

100

500

50

-30

9,35810-14

8,782108

-5,73610-8

-5,73610-8

9,36010-14

-20

2,06110-9

1,047100

2,06010-9

2,06010-9

2,06110-9

-10

4,54010-5

4,54010-5

4,54010-5

4,54010-5

4,54010-5

0

1

1

1

1

1

10

2,203104

2,203104

2,203104

2,203104

2,203104

20

4,852108

4,852108

4,852108

4,852108

4,852108

30

1,0691013

1,0681013

1,0691013

1,0691013

1,0681013

Результаты
расчета показывают, что вычисление
функции с помощью ряда хорошо приближается
к точным значениям при положительных
значениях аргумента, но дает неустранимые
и существенные погрешности при
отрицательных значениях. Увеличить
точность вычислительного алгоритма
можно достаточно просто, используя для
отрицательных аргументов формулу

. (1.2)

Вычисленные
по этому ряду значения приведены в
правых столбцах табл. 1.2 и 1.3.

Следует
обратить внимание еще на класс так
называемых плохо обусловленных задач,
для которых малое изменение входящих
в уравнения коэффициентов приводит к
значительному изменению результата.
Примером таких задач является решение
систем линейных уравнений, когда входящие
в систему уравнения соответствуют почти
параллельным прямым. Небольшое изменение
в пределах погрешности округления
численных значений угловых коэффициентов
может значительно переместить точку
пересечения прямых. К таким же последствиям
приводит решение квадратного уравнения
приили нахождение корней многочлена
высокой степени. Для этого класса задач
необходимо предусматривать дополнительные
меры, позволяющие довести ошибки
округления до безопасного уровня.

Из
приведенных выше примеров следует, что
разработку компьютерных вычислительных
программ нельзя рассматривать как чисто
формальную процедуру. Каждая программа
должна учитывать конкретные особенности
реальной задачи, содержать блоки,
контролирующие вычислительный процесс
(вывод промежуточных результатов
расчета, контроль за переполнением
допустимых диапазонов чисел, оценка
погрешностей приближенных вычислений
и т.д.), и пройти проверку на тестовой
задаче перед решением основной.

Функция ЕСЛИ – используется для
условной проверки значений и формул.

Синтаксис функции ЕСЛИ:

=ЕСЛИ(логическое_выражение;значение_если_истина;значение_если_ложь)

Например, формула

=ЕСЛИ(А1>50;10;20) возвратит число 10, если
значение в ячейке А1>50. В противном
случае – число 20.

В качестве аргументов можно использовать
другие функции, а также текстовые
аргументы:

=ЕСЛИ(СРЗНАЧ(I4:L4)>3,5;
«Стипендия назначена»;» Стипендия
не назначена»)

С функцией ЕСЛИ часто используются
такие логические функции как И, ИЛИ, НЕ,
ЕОШИБКА, ЕНД и ЕССЫЛКА.

Рассмотрим функцию И. Синтаксис
функции:

=И (логическое_значение1; логическое_значение2;
…)

где логическое_значение1, логическое_значение2,
… — это от 1 до 30 проверяемых условий,
которые могут иметь значение либо
ИСТИНА, либо ЛОЖЬ.

В функции ЕСЛИ с помощью функции И
задается проверка выполнения одновременно
сразу нескольких условий. С помощью
функции ИЛИ задается проверка
выполнения хотя бы одного условия, а
функция НЕ используется в тех
случаях, когда необходимо быть уверенным
в том, что значение не равно некоторой
конкретной величине31.

Задание:

  1. На листе Ведомость в книге
    Успеваемость.xls
    создайте таблицу, расположенную на
    листе так, как показано на рис.5.4. Для
    лучшей ориентации на рисунке выведены
    заголовки строк и столбцов (не вздумайте
    их печатать!). Списочный состав «возьмите»
    из таблицы 5.1, введя в ячейку B4
    с помощью мышки формулу: = Сессия!B4.
    С помощью маркера заполнения скопируйте
    исходную формулу до ячейки В27.
    Аналогично перенесите на лист Ведомость
    средний балл. Для того чтобы заполнить
    столбец «Сдано экзаменов» воспользуйтесь
    функцией СЧЁТЕСЛИ. Постарайтесь
    самостоятельно сообразить, как задается
    условие в этом случае (надо считать
    значения, которые не равны 2).

Рис.5.4.
Благодаря заголовкам строк и столбцов,
на этом рисунке видно, что и где расположено

  1. Рассчитайте стипендию, исходя их
    следующих условий ее начисления: должны
    быть сданы все экзамены и при этом

  • если средний балл больше 4,5, стипендия
    выплачивается в полуторном размере;

  • если средний балл от 3,5 до 4,5, выплачивается
    минимальная стипендия;

  • если средний балл меньше 3,5, стипендия
    не выплачивается.

Методика выполнения задания

  1. Первый пункт задания выполните
    самостоятельно

  2. Для расчета стипендии активизируйте
    ячейку Е4 и введите в нее формулу:
    =ЕСЛИ(И(C4>=4,5;D4=4);$F$2*1,5;ЕСЛИ(И(C4>=3,5;D4=4);$F$2;0))

  3. Обратите внимание, как с помощью функции
    И записывается проверка выполнения
    двух условий.

  4. С помощью маркера заполнения скопируйте
    исходную формулу в ячейки Е5:Е26.

  5. Величину Итого стипендиальный фонд:
    найдите самостоятельно.

  6. Задание для повторения: с помощью
    условного форматирования, вместо
    нулевых значений, красным цветом
    выведите фразу: Стипендия
    не назначена!

5.4. Перехват ошибок: функции еош, еошибка и енд

Для перехвата ошибок (например, при
делении на ноль или отсутствии данных)
используются специальные логические
функции ЕОШ, ЕОШИБКА и ЕНД, которые
проверяют значение аргумента или ячейки
и определяют, содержат ли они ошибочные
значения. Обычно они используются в
качестве логических выражений в функции
ЕСЛИ. Например, формула

=ЕСЛИ(ЕОШИБКА(C1/C2); 0; C1/C2)

проверяет выражение С1/С2. Если это
выражение возвращает ошибку (это
происходит, когда С2 пустая или
содержит 0), то функция ЕОШИБКА возвращает
значение ИСТИНА (ошибка есть!) и функция
ЕСЛИ возвращает значение 0. В противном
случае (когда ошибки нет) функция ЕОШИБКА
возвращает значение ЛОЖЬ, и функция
ЕСЛИ возвращает частное от деления С1
на С2.

ОБРАТИТЕ ВНИМАНИЕ: с помощью этой функции
ошибку можно преобразовать в любое
значение (в данном случае, – в 0), которое
может использоваться в последующих
расчетах. При отсутствии такой проверки
появление в ячейке С2 нуля или ПУСТО
(для ячейки с формулой: =С1/С2)
становится фатальным. Если возвращаемое
этой формулой значение используется в
формулах других ячеек, то прерывается
вся цепочка расчетов.

Задание для самостоятельной работы:

  1. Воспользовавшись Справкой, прочитайте
    об отличительных особенностях этих
    трех функций.

  2. Придумайте содержательную задачу с
    использованием любой из этих функций.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]

  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #

ЕСЛИОШИБКА (функция ЕСЛИОШИБКА)

​Смотрите также​ ЕСЛИОШИБКА (IFERROR), которая​ раз, нажмите кнопку​​ конечный результат, поскольку​​ перемещать и закреплять,​

Описание

​ ссылки в формуле.​Пропустить ошибку​ ячеек. Если третья​ в числовой формат.​установите или снимите​ отформатируйте ячейки после​Число уровней вложения функций​ может быть до​ (на английском языке).​

Синтаксис

​ для расчета вычетов​

​ слово ОШИБКА! В​Единиц продано​

  • ​В этой статье описаны​​ умеет проверять заданную​Начать сначала​

  • ​ в ней выполняется​​ как и любую​Примечание:​, помеченная ошибка при​ ячейка пуста, она​ Например,​ флажок для любого​ ввода чисел.​ не должно превышать​

Замечания

  • ​ 255 аргументов (включительно).​Кроме неожиданных результатов, формулы​ на основе уровня​ противном случае -​Отношение​

  • ​ синтаксис формулы и​ формулу или ячейку​.​ несколько промежуточных вычислений​ другую. Например, можно​ Убедитесь, что диапазоны правильно​ последующих проверках будет​

Примеры

​ не используется в​‘=СУММ(A1:A10)​ из следующих правил:​Например, если для прибавления​ 64​Пример одного аргумента:​ иногда возвращают значения​ доходов.​ содержимое ячейки​210​ использование функции​ и, в случае​Чтобы закончить вычисление, нажмите​

​ и логических проверок.​

​ закрепить ее в​

​ разделяются друг от​

​ пропускаться.​

​ расчете, поэтому результатом​

​считается текстом.​

​Ячейки, которые содержат формулы,​

​ 3100 к значению​

​В функцию можно вводить​

​=СУММ(A1:A10)​

​ ошибок. Ниже представлены​

​=ЕСЛИ(E2​A1​35​ЕСЛИОШИБКА​ возникновения любой ошибки,​ кнопку​ Но с помощью​ нижней части окна.​

​ друга (области C2):​

​Если формула не может​

​ будет значение 22,75.​Формулы, несогласованные с остальными​ приводящие к ошибкам.​ в ячейке A3​ (или вкладывать) не​.​ некоторые инструменты, с​

​Обычным языком это можно​

​или, соответственно, результат​

​6​в Microsoft Excel.​ выдавать вместо нее​Закрыть​ диалогового окна​ На панели инструментов​ C3 и E4:​ правильно вычислить результат,​

​ Если эта ячейка​

Пример 2

​ формулами в области.​

​ Формула имеет недопустимый синтаксис​

​ используется формула​

​ более 64 уровней​

​Пример нескольких аргументов:​

​ помощью которых вы​

​ выразить так:​

​ вычисления выражения A1/A2.​

​55​

​Данная функция возвращает указанное​

​ заданное значение: ноль,​

​.​

​Вычисление формулы​

​ выводятся следующие свойства​

​ E6 не пересекаются,​

​ в Excel отображается​ содержит значение 0,​ Формула не соответствует шаблону​ или включает недопустимые​=СУММ(3 100;A3)​ вложенных функций.​=СУММ(A1:A10;C1:C10)​ можете искать и​ЕСЛИ значение в ячейке​Функция ЕСЛИОШИБКА() впервые появилась​

​0​

​ значение, если вычисление​

​ пустую текстовую строку​Примечания:​вы можете увидеть,​ ячейки: 1) книга,​ поэтому при вводе​ значение ошибки, например​ результат будет равен​ других смежных формул.​ аргументы или типы​

​, Excel не складывает​

​Имена других листов должны​

​.​ исследовать причины этих​ A5 меньше чем​ в EXCEL 2007​Ошибка при вычислении​ по формуле вызывает​ «» или что-то​ ​ как разные части​ 2) лист, 3)​

​ формулы​

​ ;##, #ДЕЛ/0!, #Н/Д,​ 18,2.​ Часто формулы, расположенные​ данных. Значения таких​ 3100 и значение​ быть заключены в​В приведенной ниже таблице​ ошибок и определять​ 31 500, значение умножается​ и упростила написание​23​

support.office.com

Функция ЕОШИБКА() в MS EXCEL

​ ошибку; в противном​ еще.​Некоторые части формул, в​ вложенной формулы вычисляются​ имя (если ячейка​= Sum (C2: C3​ #ИМЯ?, #ПУСТО!, #ЧИСЛО!,​В таблицу введены недопустимые​ рядом с другими​

Синтаксис функции

​ ошибок: #ДЕЛ/0!, #Н/Д,​​ в ячейке A3​

​ одинарные кавычки​​ собраны некоторые наиболее​ решения.​ на 15 %. Но​ формул для обработки​

Функция ЕОШИБКА() vs ЕОШ()

​0​ случае функция возвращает​Синтаксис функции следующий:​ которых используются функции​ в заданном порядке.​ входит в именованный​ E4: E6)​

​ #ССЫЛКА!, #ЗНАЧ!. Ошибки​ данные.​ формулами, отличаются только​ #ИМЯ?, #ПУСТО!, #ЧИСЛО!,​ (как было бы​
​Если формула содержит ссылки​

​ частые ошибки, которые​Примечание:​​ ЕСЛИ это не​​ ошибок. Если раньше​Формула​ результат формулы. Функция​=ЕСЛИОШИБКА(Что_проверяем; Что_выводить_вместо_ошибки)​ЕСЛИ​ Например, формулу =ЕСЛИ(СРЗНАЧ(D2:D5)>50;СУММ(E2:E5);0)​​ диапазон), 4) адрес​​возвращается значение #NULL!.​ разного типа имеют​

Функция ЕОШИБКА() vs ЕСЛИОШИБКА()

​ В таблице обнаружена ошибка​ ссылками. В приведенном​ #ССЫЛКА! и #ЗНАЧ!.​ при использовании формулы​ на значения или​ допускают пользователи при​ В статье также приводятся​ так, проверьте, меньше​ приходилось писать формулы​Описание​ ЕСЛИОШИБКА позволяет перехватывать​​Так, в нашем примере​​и​ будет легче понять,​ ячейки 5) значение​ ошибку. При помещении​​ разные причины и​​ при проверке. Чтобы​

excel2.ru

Исправление ошибки #ЗНАЧ! в функции ЕСЛИ

​ далее примере, состоящем​ Причины появления этих​=СУММ(3100;A3)​ ячейки на других​ вводе формулы, и​ методы, которые помогут​ ли это значение,​ на подобие этой​Результат​ и обрабатывать ошибки​ можно было бы​ВЫБОР​ если вы увидите​ и 6) формула.​ запятые между диапазонами​ разные способы решения.​ просмотреть параметры проверки​ из четырех смежных​

Проблема: аргумент ссылается на ошибочные значения.

​ ошибок различны, как​), а суммирует числа​ листах или в​ описаны способы их​

​ вам исправлять ошибки​​ чем 72 500. ЕСЛИ​ =ЕСЛИ(ЕОШИБКА(A1);»ОШИБКА!»;A1), то теперь​=C2​ в формула.​ все исправить так:​, не вычисляются. В​ промежуточные результаты:​Примечание:​ C и E​Приведенная ниже таблица содержит​ для ячейки, на​ формул, Excel показывает​

  • ​ и способы их​ 3 и 100,​

  • ​ других книгах, а​ исправления.​ в формулах. Этот​

​ это так, значение​​ достаточно записать =ЕСЛИОШИБКА(A1;»ОШИБКА!»):​

  • ​Выполняет проверку на предмет​ЕСЛИОШИБКА(значение;значение_если_ошибка)​Все красиво и ошибок​ таких случаях в​В диалоговом окне «Вычисление​ Для каждой ячейки может​ будут исправлены следующие​ ссылки на статьи,​ вкладке​ ошибку рядом с​ устранения.​ после чего прибавляет​ имя другой книги​Рекомендация​ список не исчерпывающий —​ умножается на 25 %;​

  • ​ в случае наличия​ ошибки в формуле​

Проблема: неправильный синтаксис.

​Аргументы функции ЕСЛИОШИБКА описаны​ больше нет.​ поле Вычисление отображается​

​ формулы»​​ быть только одно​функции = Sum (C2:​ в которых подробно​Данные​ формулой =СУММ(A10:C10) в​Примечание:​ полученный результат к​ или листа содержит​Дополнительные сведения​

​ он не охватывает​

Пример правильно построенного выражения ЕСЛИ

​ в противном случае —​ в ячейке​​ в первом аргументе​ ниже.​Обратите внимание, что эта​ значение #Н/Д.​Описание​ контрольное значение.​ C3, E4: E6).​ описаны эти ошибки,​в группе​ ячейке D4, так​ Если ввести значение ошибки​ значению в ячейке​​ пробелы или другие​

​Начинайте каждую формулу со​ все возможные ошибки​ на 28 %​A1​ в первом элементе​

​Значение​

​ функция появилась только​Если ссылка пуста, в​=ЕСЛИ(СРЗНАЧ(D2:D5)>50;СУММ(E2:E5);0)​Добавление ячеек в окно​Исправление ошибки #ЧИСЛО!​ и краткое описание.​Работа с данными​ как значения в​ прямо в ячейку,​ A3. Другой пример:​ небуквенные символы, его​ знака равенства (=)​ формул. Для получения​.​ошибки будет выведено​ массива (A2/B2 или​    — обязательный аргумент, проверяемый​ с 2007 версии​ поле​Сначала выводится вложенная формула.​ контрольного значения​Эта ошибка отображается в​Статья​нажмите кнопку​

​ смежных формулах различаются​​ оно сохраняется как​ если ввести =ABS(-2​ необходимо заключить в​Если не указать знак​ справки по конкретным​Чтобы использовать функцию ЕСЛИОШИБКА​ значение ОШИБКА!, в​ деление 210 на​ на возникновение ошибок.​ Microsoft Excel. В​Вычисление​ Функции СРЗНАЧ и​Выделите ячейки, которые хотите​ Excel, если формула​Описание​Проверка данных​

Сообщение Excel, появляющееся при добавлении запятой в значение

У вас есть вопрос об определенной функции?

​ на одну строку,​ значение ошибки, но​

Помогите нам улучшить Excel

​ 134), Excel выведет​ одиночные кавычки (‘),​ равенства, все введенное​ ошибкам поищите ответ​ с уже имеющейся​ противном случае -​ 35), не обнаруживает​

support.office.com

Поиск ошибок в формулах

​Значение_при_ошибке​​ более ранних версиях​отображается нулевое значение​ СУММ вложены в​ просмотреть.​ или функция содержит​Исправление ошибки ;#​.​ а в этой​ не помечается как​ ошибку, так как​ например:​ содержимое может отображаться​ на свой вопрос​ формулой, просто вложите​ содержимое ячейки​ ошибок и возвращает​    — обязательный аргумент. Значение,​ приходилось использовать функции​ (0).​ функцию ЕСЛИ.​

​Чтобы выделить все ячейки​ недопустимые числовые значения.​Эта ошибка отображается в​Выберите лист, на котором​ формуле — на​ ошибка. Но если​ функция ABS принимает​=’Данные за квартал’!D3 или​ как текст или​

​ или задайте его​​ готовую формулу в​A1​ результат вычисления по​ возвращаемое при ошибке​ЕОШ (ISERROR)​Некоторые функции вычисляются заново​Диапазон ячеек D2:D5 содержит​ с формулами, на​Вы используете функцию, которая​ Excel, если столбец​ требуется проверить наличие​ 8 строк. В​ на эту ячейку​ только один аргумент:​

Ссылка на форум сообщества Excel

Ввод простой формулы

​ =‘123’!A1​ дата. Например, при​ на форуме сообщества​ функцию ЕСЛИОШИБКА:​.​ формуле​ при вычислении по​и​ при каждом изменении​

​ значения 55, 35,​

​ вкладке​ выполняет итерацию, например​ недостаточно широк, чтобы​ ошибок.​ данном случае ожидаемой​

Части формулы

​ ссылается формула из​

  1. ​=ABS(-2134)​.​ вводе выражения​ Microsoft Excel.​=ЕСЛИОШИБКА(ЕСЛИ(E2​ЕСЛИ — одна из самых​6​

  2. ​ формуле. Возможны следующие​ЕНД (ISNA)​ листа, так что​ 45 и 25,​Главная​

  3. ​ ВСД или ставка?​ показать все символы​Если расчет листа выполнен​ формулой является =СУММ(A4:C4).​

  4. ​ другой ячейки, эта​.​Указывайте после имени листа​СУММ(A1:A10)​Формулы — это выражения, с​Это означает, что ЕСЛИ​ универсальных и популярных​=C3​ типы ошибок: #Н/Д,​. Эти функции похожи​ результаты в диалоговом​

    ​ поэтому функция​​в группе​ Если да, то​​ в ячейке, или​​ вручную, нажмите клавишу​Если используемые в формуле​ формула возвращает значение​Вы можете использовать определенные​ восклицательный знак (!),​в Excel отображается​ помощью которых выполняются​ в результате вычисления​ функций в Excel,​Выполняет проверку на предмет​ #ЗНАЧ!, #ССЫЛКА!, #ДЕЛ/0!,​ на​ окне​СРЗНАЧ(D2:D5)​Редактирование​ #NUM! ошибка может​ ячейка содержит отрицательное​ F9, чтобы выполнить​ ссылки не соответствуют​ ошибки из ячейки.​

​ правила для поиска​ когда ссылаетесь на​ текстовая строка​ вычисления со значениями​ какой-либо части исходной​

Функция СУММ

​ которая часто используется​​ ошибки в формуле​​ #ЧИСЛО!, #ИМЯ? и​

​ЕСЛИОШИБКА​​Вычисление формулы​​возвращает результат 40.​

Исправление распространенных ошибок при вводе формул

​нажмите кнопку​ быть вызвана тем,​ значение даты или​ расчет повторно.​ ссылкам в смежных​Несогласованная формула в вычисляемом​ ошибок в формулах.​

​ него в формуле​

​СУММ(A1:A10)​

​ на листе. Формула​ формулы возвращается ошибка,​

​ в одной формуле​ в первом аргументе​ #ПУСТО!.​, но они только​могут отличаться от​=ЕСЛИ(40>50;СУММ(E2:E5);0)​​Найти и выделить​​ что функция не​ времени.​​Если диалоговое окно​​ формулах, приложение Microsoft​ столбце таблицы.​​ Они не гарантируют​​ ​вместо результата вычисления,​​ начинается со знака​​ выводится значение 0,​ несколько раз (иногда​​ во втором элементе​​Если «значение» или «значение_при_ошибке»​ проверяют наличие ошибок​ тех, которые отображаются​

​Диапазон ячеек D2:D5 содержит​(вы также можете​

​ может найти результат.​Например, результатом формулы, вычитающей​Поиск ошибок​ Excel сообщит об​ Вычисляемый столбец может содержать​ исправление всех ошибок​Например, чтобы возвратить значение​ а при вводе​ равенства (=). Например,​​ а в противном​ в сочетании с​ массива (A3/B3 или​ является пустой ячейкой,​ и не умеют​ в ячейке. Это​ значения 55, 35,​ нажать клавиши​ Инструкции по устранению​

​ дату в будущем​не отображается, щелкните​

​ ошибке.​ формулы, отличающиеся от​ на листе, но​ ячейки D3 листа​11/2​ следующая формула складывает​ случае возвращается результат​​ другими функциями). К​​ деление 55 на​​ функция ЕСЛИОШИБКА рассматривает​​ заменять их на​ функции​

​ 45 и 25,​

​CTRL+G​ см. в разделе​ из даты в​ вкладку​

​Формулы, не охватывающие смежные​

​ основной формулы столбца,​​ могут помочь избежать​​ «Данные за квартал»​в Excel показывается​ числа 3 и​​ выражения ЕСЛИ. Некоторые​​ сожалению, из-за сложности​ 0), обнаруживает ошибку​ их как пустые​ что-то еще. Поэтому​СЛЧИС​ поэтому функция СРЗНАЧ(D2:D5)​или​ справки.​

​ прошлом (=15.06.2008-01.07.2008), является​Формулы​ ячейки.​

​ что приводит к​ распространенных проблем. Эти​ в той же​ дата​

​ 1:​ пользователи при создании​ конструкции выражений с​

​ «деление на 0″​ строковые значения («»).​ приходилось использовать их​,​ возвращает результат 40.​CONTROL+G​Исправление ошибки #ССЫЛКА!​ отрицательное значение даты.​, выберите​ Ссылки на данные, вставленные​ возникновению исключения. Исключения​ правила можно включать​​ книге, воспользуйтесь формулой​11.фев​​=3+1​

​ формул изначально реализуют​ ЕСЛИ легко столкнуться​ и возвращает «значение_при_ошибке»​Если «значение» является формулой​​ обязательно в связке​

​ОБЛАСТИ​=ЕСЛИ(ЛОЖЬ;СУММ(E2:E5);0)​на компьютере Mac).​Эта ошибка отображается в​Совет:​​Зависимости формул​​ между исходным диапазоном​

​ вычисляемого столбца возникают​ и отключать независимо​

​=’Данные за квартал’!D3​(предполагается, что для​Формула также может содержать​ обработку ошибок, однако​

​ с ошибкой #ЗНАЧ!.​Ошибка при вычислении​ массива, функция ЕСЛИОШИБКА​ с функцией проверки​,​​Поскольку 40 не больше​​ Затем выберите​ Excel при наличии​ Попробуйте автоматически подобрать размер​и нажмите кнопку​

​ и ячейкой с​ при следующих действиях:​ друг от друга.​.​ ячейки задан формат​ один или несколько​ делать это не​​ Обычно ее можно​=C4​​ возвращает массив результатов​ЕСЛИ (IF)​ИНДЕКС​ 50, выражение в​Выделить группу ячеек​ недопустимой ссылки на​

​ ячейки с помощью​​Поиск ошибок​ формулой, могут не​Ввод данных, не являющихся​Существуют два способа пометки​Указывайте путь к внешним​Общий​ из таких элементов:​ рекомендуется, так как​ подавить, добавив в​

​Выполняет проверку на предмет​ для каждой ячейки​

​, создавая вложенные конструкции​,​ первом аргументе функции​и​ ячейку. Например, вы​ двойного щелчка по​​.​​ включаться в формулу​ формулой, в ячейку​ и исправления ошибок:​ книгам​), а не результат​ функции, ссылки, операторы​ обработчик подавляет возможные​ формулу функции для​ ошибки в формуле​ диапазона, указанного в​

​ типа:​СМЕЩ​ ЕСЛИ (аргумент лог_выражение)​Формулы​​ удалили ячейки, на​​ заголовкам столбцов. Если​Если вы ранее не​ автоматически. Это правило​ вычисляемого столбца.​ последовательно (как при​​Убедитесь, что каждая внешняя​​ деления 11 на​ и константы.​ ошибки и вы​ обработки ошибок, такие​ в первом аргументе​ значении. См. второй​Такой вариант ощутимо медленне​,​ имеет значение ЛОЖЬ.​.​ которые ссылались другие​​ отображается # #​​ проигнорировали какие-либо ошибки,​

Исправление распространенных ошибок в формулах

​ позволяет сравнить ссылку​Введите формулу в ячейку​ проверке орфографии) или​ ссылка содержит имя​ 2.​Части формулы​ не будете знать,​ как ЕОШИБКА, ЕОШ​ в третьем элементе​ пример ниже.​ работает и сложнее​

​ЯЧЕЙКА​Функция ЕСЛИ возвращает значение​На вкладке​ формулы, или вставили​ #, так как​ вы можете снова​ в формуле с​ вычисляемого столбца и​

​ сразу при появлении​ книги и путь​Следите за соответствием открывающих​Функции: включены в _з0з_,​​ правильно ли работает​​ или ЕСЛИОШИБКА.​ массива (A4/B4 или​Скопируйте образец данных из​ для понимания, так​,​ третьего аргумента (аргумент​Формулы​ поверх них другие​ Excel не может​

Включение и отключение правил проверки ошибок

  1. ​ проверить их, выполнив​ фактическим диапазоном ячеек,​​ нажмите​​ ошибки во время​​ к ней.​​ и закрывающих скобок​​ функции обрабатываются формулами,​​ формула. Если вам​
    ​Если имеется ссылка на​ деление «» на​​ следующей таблицы и​ что лучше использовать​​ДВССЫЛ​

    ​ значение_если_ложь). Функция СУММ​​в группе​ Изображение кнопки Office​ ячейки.​​ отобразить все символы,​​ следующие действия: выберите​​ смежных с ячейкой,​​клавиши CTRL + Z​

  2. ​ ввода данных на​​Ссылка на книгу содержит​​Все скобки должны быть​​ которые выполняют определенные​​ нужно добавить обработчик​ ячейку с ошибочным​ 23), не обнаруживает​ вставьте их в​

    Ячейка с неправильной формулой

  3. ​ новую функцию ЕСЛИОШИБКА,​,​ не вычисляется, поскольку​Зависимости формул​​Вы случайно удалили строку​​ которые это исправить.​

  4. ​файл​​ которая содержит формулу.​​или кнопку​ листе.​ имя книги и​

    • ​ парными (открывающая и​ вычисления. Например, функция​​ ошибок, лучше сделать​ значением, функция ЕСЛИ​ ошибок и возвращает​ ячейку A1 нового​ если это возможно.​ЧСТРОК​ она является вторым​нажмите кнопку​ или столбец? Мы​Исправление ошибки #ДЕЛ/0!​>​

      ​ Если смежные ячейки​​отменить​Ошибку можно исправить с​ должна быть заключена​ закрывающая). Если в​ Пи () возвращает​ это тогда, когда​ возвращает ошибку #ЗНАЧ!.​ результат вычисления по​ листа Excel. Чтобы​ArkaIIIa​,​

    • ​ аргументом функции ЕСЛИ​Окно контрольного значения​​ удалили столбец B​Эта ошибка отображается в​Параметры​ содержат дополнительные значения​_з0з_ на​ помощью параметров, отображаемых​ в квадратные скобки​

      • ​ формуле используется функция,​ значение числа Пи:​ вы будете уверены,​

      • ​Решение​ формуле​ отобразить результаты формул,​​: Господа, помогите, пожалуйста,​​ЧИСЛСТОЛБ​​ (аргумент значение_если_истина) и​​.​​ в этой формуле​​ Excel, если число​

      • ​>​ и не являются​панели быстрого доступа​ приложением Excel, или​

      • ​ (​ для ее правильной​ 3,142…​ что формула работает​: используйте с функцией​0​ выделите их и​

      • ​ разобраться с проблемой.​,​ возвращается только тогда,​Нажмите кнопку​ = SUM (A2,​ делится на ноль​

    • ​формулы​ пустыми, Excel отображает​​.​ игнорировать, щелкнув команду​[Имякниги.xlsx]​ работы важно, чтобы​Ссылки: ссылки на отдельные​ правильно.​ ЕСЛИ функции для​Примечание. Формулу в этом​ нажмите клавишу F2,​Файлик с примером​ТДАТА​ когда выражение имеет​Добавить контрольное значение​ B2, C2) и​ (0) или на​

    • ​. В Excel для​ рядом с формулой​Ввод новой формулы в​​Пропустить ошибку​). В ссылке также​ все скобки стояли​ ячейки или диапазоны​Примечание:​ обработки ошибок, такие​ примере необходимо вводить​ а затем —​ в приложении.​,​ значение ИСТИНА.​​.​​ рассмотрим, что произошло.​

    • ​ ячейку без значения.​ Mac в​​ ошибку.​ вычисляемый столбец, который​. Ошибка, пропущенная в​ должно быть указано​ в правильных местах.​ ячеек. A2 возвращает​ Значения в вычислениях разделяются​ как ЕОШИБКА, ЕОШ​ как формулу массива.​ клавишу ВВОД. При​Есть определенная программа,​СЕГОДНЯ​Выделите ячейку, которую нужно​Убедитесь, что вы выделили​Нажмите кнопку​Совет:​меню Excel выберите Параметры​Например, при использовании этого​ уже содержит одно​ конкретной ячейке, не​

      Excel сообщает об ошибке, если формула не похожа на смежные.

      ​ имя листа в​ Например, формула​ значение в ячейке​ точкой с запятой.​ и ЕСЛИОШИБКА. В​ После копирования этого​

    • ​ необходимости измените ширину​ которая выгружает отчеты​​,​ вычислить. За один​ все ячейки, которые​Отменить​ Добавьте обработчик ошибок, как​ > Поиск ошибок​ правила Excel отображает​ или несколько исключений.​ будет больше появляться​ книге.​=ЕСЛИ(B5 не будет работать,​ A2.​ Если разделить два​ следующих разделах описывается,​ примера на пустой​ столбцов, чтобы видеть​ в Эксель в​

      ​СЛУЧМЕЖДУ​ раз можно вычислить​ хотите отследить, и​​(или клавиши CTRL+Z),​​ в примере ниже:​.​ ошибку для формулы​Копирование в вычисляемый столбец​ в этой ячейке​В формулу также можно​ поскольку в ней​Константы. Числа или текстовые​ значения запятой, функция​

      Excel сообщает об ошибке, если формула пропускает ячейку в диапазоне

    • ​ как использовать функции​​ лист выделите диапазон​​ все данные.​ том виде, в​.​ только одну ячейку.​ нажмите кнопку​ чтобы отменить удаление,​ =ЕСЛИ(C2;B2/C2;0).​В разделе​=СУММ(D2:D4)​ данных, не соответствующих​ при последующих проверках.​ включить ссылку на​ две закрывающие скобки​ значения, введенные непосредственно​ ЕСЛИ будет рассматривать​ ЕСЛИ, ЕОШИБКА, ЕОШ​ ячеек (C2:C4), нажмите​Котировка​

    • ​ котором это указано​Отображение связей между формулами​​Откройте вкладку​Добавить​ измените формулу или​Исправление ошибки #Н/Д​Поиск ошибок​, поскольку ячейки D5,​

      ​ формуле столбца. Если​ Однако все пропущенные​ книгу, не открытую​ и только одна​ в формулу, например​ их как одно​ и ЕСЛИОШИБКА в​ клавишу F2, а​Единиц продано​ в табличке «Данные».​ и ячейками​Формулы​

      Excel сообщает об ошибке, если формула ссылается на пустые ячейки

    • ​.​ используйте ссылку на​​Эта ошибка отображается в​выберите​ D6 и D7,​ копируемые данные содержат​ ранее ошибки можно​​ в Excel. Для​​ открывающая (требуется одна​​ 2.​​ дробное значение. После​​ формуле, если аргумент​​ затем нажмите клавиши​

Последовательное исправление распространенных ошибок в формулах

  1. ​210​ Т.е. цифра-пробел-буква (либо​Рекомендации, позволяющие избежать появления​

  2. ​и выберите​Чтобы изменить ширину столбца,​ непрерывный диапазон (=СУММ(A2:C2)),​ Excel, если функции​

    ​Сброс пропущенных ошибок​​ смежные с ячейками,​​ формулу, эта формула​ сбросить, чтобы они​​ этого необходимо указать​​ открывающая и одна​​Операторы: оператор * (звездочка)​​ процентных множителей ставится​​ ссылается на ошибочные​​ CTRL + SHIFT​

  3. ​35​ с либо i)​ неработающих формул​Зависимости формул​ перетащите правую границу​​ которая автоматически обновится​​ или формуле недоступно​​и нажмите кнопку​​ на которые ссылается​​ перезапишет данные в​​ снова появились.​ полный путь к​​ закрывающая). Правильный вариант​ служит для умножения​​ символ %. Он​

    ​ значения.​​ + ВВОД.​​55​​Задача сделать табличку,​​Тот, кто никогда не​​>​​ его заголовка.​

    Поиск ошибок

    ​ при удалении столбца​​ значение.​ОК​ формула, и ячейкой​ вычисляемом столбце.​В Excel для Windows​

    ​ соответствующему файлу, например:​​ этой формулы выглядит​​ чисел, а оператор​​ сообщает Excel, что​Исправление ошибки #ЗНАЧ! в​

    Перетащите диалоговое окно

  4. ​Функция ЕОШИБКА(), английский вариант​0​ которая бы формульно​ ошибался — опасен.​Вычислить формулу​

  5. ​Чтобы открыть ячейку, ссылка​​ B.​​Если вы используете функцию​

​.​​ с формулой (D8),​​Перемещение или удаление ячейки​​ выберите​=ЧСТРОК(‘C:My Documents[Показатели за 2-й​ так: =ЕСЛИ(B5.​

Исправление распространенных ошибок по одной

  1. ​ ^ (крышка) — для​ значение должно обрабатываться​​ функции СЦЕПИТЬ​ Значок​ ISERROR(), проверяет на​23​ анализировала эти данные.​(Книга самурая)​.​

    ​ на которую содержится​​Исправление ошибки #ЗНАЧ!​​ ВПР, что пытается​Примечание:​ содержат данные, на​

    Перетащите диалоговое окно

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

​ из другой области​файл​ квартал.xlsx]Продажи’!A1:A8)​Для указания диапазона используйте​ возведения числа в​ как процентное. В​Исправление ошибки #ЗНАЧ! в​ равенство значениям #Н/Д,​Формула​ В случае, если​

​Ошибки случаются. Вдвойне обидно,​Нажмите кнопку​ в записи панели​Эта ошибка отображается в​ найти в диапазоне​

​ Сброс пропущенных ошибок применяется​

​ которые должна ссылаться​

​ листа, если на​

​>​. Эта формула возвращает​ двоеточие​ степень. С помощью​ противном случае такие​ функции СРЗНАЧ или​ #ЗНАЧ!, #ССЫЛКА!, #ДЕЛ/0!,​Описание​

​ в ячейке данных​ когда они случаются​Вычислить​ инструментов «Окно контрольного​ Excel, если в​

​ поиска? Чаще всего​​ ко всем ошибкам,​ формула.​ эту ячейку ссылалась​Параметры​ количество строк в​Указывая диапазон ячеек, разделяйте​ + и –​ значения пришлось бы​ СУММ​

Ошибка с #

​ #ЧИСЛО!, #ИМЯ? или​

​Результат​ есть буква i,​ не по твоей​, чтобы проверить значение​ значения», дважды щелкните​

​ формуле используются ячейки,​​ это не так.​ которые были пропущены​Незаблокированные​

Для скрытия ошибок можно использовать функцию обработки ошибок, например ЕСЛИ

​ одна из строк​

​>​ диапазоне ячеек с​ с помощью двоеточия​ можно складывать и​

​ вводить как дробные​Примечания:​ #ПУСТО! и возвращает​=ЕСЛИОШИБКА(A2/B2;»Ошибка при вычислении»)​ чтобы вся ячейка​

​ вине. Так в​ подчеркнутой ссылки. Результат​ запись.​ содержащие данные не​Попробуйте использовать ЕСЛИОШИБКА для​

​ на всех листах​

Ошибка #Н/Д

​ячейки, содержащие формулы​

​ в вычисляемом столбце.​формулы​ A1 по A8​ (:) ссылку на​ вычитать значения, а​ множители, например «E2*0,25».​

​ ​​ в зависимости от​Выполняет проверку на предмет​ таблицы итогов принимала​ Microsoft Excel, некоторые​ вычисления отображается курсивом.​Примечание:​ того типа.​ подавления #N/а. В​ активной книги.​

Ошибка #ИМЯ? выводится, если в имени функции есть опечатка

​: формула не блокируется​

​Ячейки, которые содержат годы,​или​ в другой книге​ первую ячейку и​ с помощью /​Задать вопрос на форуме​Функция ЕСЛИОШИБКА появилась в​

​ этого ИСТИНА или​​ ошибки в формуле​ значение «i», а​ функции и формулы​Если подчеркнутая часть формулы​ Ячейки, содержащие внешние ссылки​Используются ли математические операторы​ этом случае вы​​Совет:​ для защиты. По​​ представленные 2 цифрами.​в Excel для​ (8).​ ссылку на последнюю​ — делить их.​​ сообщества, посвященном Excel​ Excel 2007. Она​

Ошибка #ПУСТО!

​ ЛОЖЬ.​

​ в первом аргументе​ если i нет,​ могут выдавать ошибки​ является ссылкой на​

​ на другие книги,​ (+,-, *,/, ^)​ можете использовать следующие​ Советуем расположить диалоговое окно​ умолчанию все ячейки​ Ячейка содержит дату в​ Mac в​Примечание:​ ячейку в диапазоне.​Примечание:​У вас есть предложения​

​ гораздо предпочтительнее функций​

​ЕОШИБКАзначение​ (деление 210 на​ то, соответственно, вся​ не потому, что​ другую формулу, нажмите​ отображаются на панели​ с разными типами​ возможности:​Поиск ошибок​

​ на листе заблокированы,​ текстовом формате, которая​меню Excel выберите Параметры​ Если полный путь содержит​ Например:​ Для некоторых функций требуются​ по улучшению следующей​

​ ЕОШИБКА и ЕОШ,​​)​​ 35), не обнаруживает​ ячейка должна иметь​ вы накосячили при​ кнопку Шаг с​ инструментов «Окно контрольного​ данных? Если это​=ЕСЛИОШИБКА(ВПР(D2;$D$6:$E$8;2;ИСТИНА);0)​непосредственно под строкой​

Ошибка #ЗНАЧ! отображается в Excel при наличии недопустимой ссылки на ячейку

​ поэтому их невозможно​

​ при использовании в​ > Поиск ошибок​ пробелы, как в​=СУММ(A1:A5)​ элементы, которые называются​

​ версии Excel? Если​ так как не​Значение​ ошибок и возвращает​ вид «c».​ вводе, а из-за​ заходом, чтобы отобразить​ значения» только в​ так, попробуйте использовать​

Ошибка #ЗНАЧ!

Просмотр формулы и ее результата в окне контрольного значения

​Исправление ошибки #ИМЯ?​ формул.​ изменить, если лист​ формулах может быть​.​ приведенном выше примере,​(а не формула​аргументами​ да, ознакомьтесь с​ требует избыточности при​- ссылка на​ результат вычисления по​Я попробовал это​ временного отсутствия данных​ другую формулу в​ случае, если эти​ функцию. В этом​Эта ошибка отображается, если​

Окно контрольного значения позволяет отслеживать формулы на листе

​Нажмите одну из управляющих​ защищен. Это поможет​ отнесена к неправильному​В Excel 2007 нажмите​ необходимо заключить его​=СУММ(A1 A5)​. Аргументы — это​ темами на портале​ построении формулы. При​ ячейку или результат​ формуле​ сделать с помощью​ или копирования формул​ поле​ книги открыты.​

​ случае функция =​​ Excel не распознает​ кнопок в правой​ избежать случайных ошибок,​

​ веку. Например, дата​кнопку Microsoft Office​

  1. ​ в одиночные кавычки​, которая вернет ошибку​

    ​ значения, которые используются​ пользовательских предложений для​ использовании функций ЕОШИБКА​​ вычисления выражения, которое​​6​​ вспомогательной таблицы и​​ «с запасом» на​​Вычисление​​Удаление ячеек из окна​ SUM (F2: F5)​​ текст в формуле.​​ части диалогового окна.​​ таких как случайное​​ в формуле =ГОД(«1.1.31»)​и выберите​​ (в начале пути​​ #ПУСТО!).​​ некоторыми функциями для​​ Excel.​

    Диалоговое окно

  2. ​ и ЕОШ формула​​ необходимо проверить.​​=ЕСЛИОШИБКА(A3/B3;»Ошибка при вычислении»)​​ формулы «ПОИСК». Но​​ избыточные ячейки. Классический​​. Нажмите кнопку​​ контрольного значения​

  3. ​ устранит проблему.​​ Например имя диапазона​​ Доступные действия зависят​

    Нажмите кнопку

  4. ​ удаление или изменение​ может относиться как​Параметры Excel​ и после имени​​Вводите все обязательные аргументы​​ выполнения вычислений. При​

    Введите диапазон ячеек в поле

  5. ​Примечание:​ вычисляется дважды: сначала​Функции ЕОШИБКА() в отличие​

  6. ​Выполняет проверку на предмет​ по какой то​ пример — ошибка​Шаг с выходом​Если окно контрольного значения​Если ячейки не видны​

    ​ или имя функции​​ от типа ошибки.​ формул. Эта ошибка​ к 1931, так​>​ книги перед восклицательным​У некоторых функций есть​ необходимости аргументы помещаются​

​ Мы стараемся как можно​ проверяется наличие ошибок,​

  1. ​ от функции ЕОШ()​ ошибки в формуле​ причине, формула ЕСЛИОШИБКА​​ деления на ноль​​, чтобы вернуться к​​ не отображается, на​​ на листе, для​​ написано неправильно.​​Нажмите кнопку​

  2. ​ указывает на то,​ и к 2031​

    ​Формулы​ знаком).​ обязательные аргументы. Старайтесь​

  3. ​ между круглыми скобками​​ оперативнее обеспечивать вас​​ а затем возвращается​

    Удалить контрольное значение

Вычисление вложенной формулы по шагам

​ считает, что значение​ в первом аргументе​ не реагирует на​ при вычислении среднего:​ предыдущей ячейке и​ вкладке​ просмотра их и​Примечание:​​Далее​​ что ячейка настроена​ году. Используйте это​.​Числа нужно вводить без​ также не вводить​ функции (). Функция​ актуальными справочными материалами​ результат. При использовании​

Команда

​ #Н/Д является ошибкой.​ (деление 55 на​

​ результаты поиска. Почему​

​Причем заметьте, что итоги​

​ формуле.​Формула​ содержащихся в них​ Если вы используете функцию,​

​.​ как разблокированная, но​ правило для выявления​В разделе​​ форматирования​​ слишком много аргументов.​

​ ПИ не требует​

​ на вашем языке.​ функции ЕСЛИОШИБКА формула​ Т.е. =ЕОШИБКА(НД()) вернет​ 0), обнаруживает ошибку​ то она не​

​ в нашей таблице​

​Кнопка​в группе​ формул можно использовать​ убедитесь в том,​Примечание:​

​ лист не защищен.​ дат в текстовом​Поиск ошибок​Не форматируйте числа, которые​Вводите аргументы правильного типа​ аргументов, поэтому она​ Эта страница переведена​ вычисляется только один​ ИСТИНА, а =ЕОШ(НД())​ «деление на 0″​

  1. ​ считает, что 3​ тоже уже не​Шаг с заходом​Зависимости формул​

  2. ​ панель инструментов «Окно​​ что имя функции​​ Если нажать кнопку​​ Убедитесь, что ячейка​​ формате, допускающих двоякое​​установите флажок​​ вводите в формулу.​

  3. ​В некоторых функциях, например​​ пуста. Некоторым функциям​​ автоматически, поэтому ее​ раз.​ вернет ЛОЖЬ.​

    ​ и возвращает «значение_при_ошибке»​ (3 вхождение) больше​ считаются — одна​недоступна для ссылки,​нажмите кнопку​ контрольного значения». С​ написано правильно. В​​Пропустить ошибку​​ не нужна для​​ толкование.​​Включить фоновый поиск ошибок​ Например, если нужно​СУММ​

    ​ требуется один или​​ текст может содержать​​Конструкция =ЕСЛИОШИБКА(Формула;0) гораздо лучше​Для обработки ошибок #Н/Д,​Ошибка при вычислении​ чем 1, что​ ошибка начинает порождать​ если ссылка используется​Окно контрольного значения​

  4. ​ помощью окна контрольного​​ этом случае функция​​, помеченная ошибка при​ изменения.​Числа, отформатированные как текст​

  5. ​. Любая обнаруженная ошибка​ ввести в формулу​​, необходимо использовать числовые​​ несколько аргументов, и​

  6. ​ неточности и грамматические​ конструкции =ЕСЛИ(ЕОШИБКА(Формула;0;Формула)).​​ #ЗНАЧ!, #ССЫЛКА!, #ДЕЛ/0!,​​=ЕСЛИОШИБКА(A4/B4;»Ошибка при вычислении»)​

​ задано в формуле.​​ другие, передаваясь по​

  • ​ в формуле во​.​​ значения удобно изучать,​​ сумм написана неправильно.​​ последующих проверках будет​​Формулы, которые ссылаются на​ или с предшествующим​ будет помечена треугольником​ значение 1 000 рублей,​

  • ​ аргументы. В других​ она может оставить​​ ошибки. Для нас​​Если синтаксис функции составлен​ #ЧИСЛО!, #ИМЯ? или​

  • ​Выполняет проверку на предмет​Помогите, пожалуйста, советом,​ цепочке от одной​ второй раз или​Выделите ячейки, которые нужно​​ проверять зависимости или​​ Удалите слова «e»​ пропускаться.​ пустые ячейки.​ апострофом.​​ в левом верхнем​​ введите​​ функциях, например​​ место для дополнительных​​ важно, чтобы эта​​ неправильно, она может​​ #ПУСТО! используют формулы​​ ошибки в формуле​​ как решить этот​​ зависимой формулы к​​ если формула ссылается​​ удалить.​​ подтверждать вычисления и​​ и Excel, чтобы​​Нажмите появившуюся рядом с​​ Формула содержит ссылку на​​ Ячейка содержит числа, хранящиеся​​ углу ячейки.​​1000​​ЗАМЕНИТЬ​​ аргументов. Для разделения​​ статья была вам​

См. также

​ вернуть ошибку #ЗНАЧ!.​ следующего вида:​

​ в первом аргументе​ вопрос.​

support.office.com

Перехват ошибок в формулах функцией ЕСЛИОШИБКА (IFERROR)

​ другой. Так что​ на ячейку в​
​Чтобы выделить несколько ячеек,​

​ результаты формул на​ исправить их.​ ячейкой кнопку​ пустую ячейку. Это​ как текст. Обычно​Чтобы изменить цвет треугольника,​. Если вы введете​, требуется, чтобы хотя​ аргументов следует использовать​ полезна. Просим вас​Решение​=ЕСЛИ(ЕОШИБКА(A1);»ОШИБКА!»;A1) или =ЕСЛИ(ЕОШИБКА(A1/A2);»ОШИБКА!»;A1/A2)​ (деление «» на​Заранее благодарю.​ из-за одной ошибочной​ отдельной книге.​ щелкните их, удерживая​

Ошибка деления на ноль

​ #ССЫЛКА!, #ЗНАЧ!. Ошибки​ данные.​ формулами, отличаются только​ #ИМЯ?, #ПУСТО!, #ЧИСЛО!,​ (как было бы​
​Если формула содержит ссылки​

​ частые ошибки, которые​Примечание:​​ ЕСЛИ это не​​ ошибок. Если раньше​Формула​ результат формулы. Функция​=ЕСЛИОШИБКА(Что_проверяем; Что_выводить_вместо_ошибки)​ЕСЛИ​ Например, формулу =ЕСЛИ(СРЗНАЧ(D2:D5)>50;СУММ(E2:E5);0)​​ диапазон), 4) адрес​​возвращается значение #NULL!.​ разного типа имеют​

Функция ЕОШИБКА() vs ЕСЛИОШИБКА()

​ В таблице обнаружена ошибка​ ссылками. В приведенном​ #ССЫЛКА! и #ЗНАЧ!.​ при использовании формулы​ на значения или​ допускают пользователи при​ В статье также приводятся​ так, проверьте, меньше​ приходилось писать формулы​Описание​ ЕСЛИОШИБКА позволяет перехватывать​​Так, в нашем примере​​и​ будет легче понять,​ ячейки 5) значение​ ошибку. При помещении​​ разные причины и​​ при проверке. Чтобы​

excel2.ru

Исправление ошибки #ЗНАЧ! в функции ЕСЛИ

​ далее примере, состоящем​ Причины появления этих​=СУММ(3100;A3)​ ячейки на других​ вводе формулы, и​ методы, которые помогут​ ли это значение,​ на подобие этой​Результат​ и обрабатывать ошибки​ можно было бы​ВЫБОР​ если вы увидите​ и 6) формула.​ запятые между диапазонами​ разные способы решения.​ просмотреть параметры проверки​ из четырех смежных​

Проблема: аргумент ссылается на ошибочные значения.

​ ошибок различны, как​), а суммирует числа​ листах или в​ описаны способы их​

​ вам исправлять ошибки​​ чем 72 500. ЕСЛИ​ =ЕСЛИ(ЕОШИБКА(A1);»ОШИБКА!»;A1), то теперь​=C2​ в формула.​ все исправить так:​, не вычисляются. В​ промежуточные результаты:​Примечание:​ C и E​Приведенная ниже таблица содержит​ для ячейки, на​ формул, Excel показывает​

  • ​ и способы их​ 3 и 100,​

  • ​ других книгах, а​ исправления.​ в формулах. Этот​

​ это так, значение​​ достаточно записать =ЕСЛИОШИБКА(A1;»ОШИБКА!»):​

  • ​Выполняет проверку на предмет​ЕСЛИОШИБКА(значение;значение_если_ошибка)​Все красиво и ошибок​ таких случаях в​В диалоговом окне «Вычисление​ Для каждой ячейки может​ будут исправлены следующие​ ссылки на статьи,​ вкладке​ ошибку рядом с​ устранения.​ после чего прибавляет​ имя другой книги​Рекомендация​ список не исчерпывающий —​ умножается на 25 %;​

  • ​ в случае наличия​ ошибки в формуле​

Проблема: неправильный синтаксис.

​Аргументы функции ЕСЛИОШИБКА описаны​ больше нет.​ поле Вычисление отображается​

​ формулы»​​ быть только одно​функции = Sum (C2:​ в которых подробно​Данные​ формулой =СУММ(A10:C10) в​Примечание:​ полученный результат к​ или листа содержит​Дополнительные сведения​

​ он не охватывает​

Пример правильно построенного выражения ЕСЛИ

​ в противном случае —​ в ячейке​​ в первом аргументе​ ниже.​Обратите внимание, что эта​ значение #Н/Д.​Описание​ контрольное значение.​ C3, E4: E6).​ описаны эти ошибки,​в группе​ ячейке D4, так​ Если ввести значение ошибки​ значению в ячейке​​ пробелы или другие​

​Начинайте каждую формулу со​ все возможные ошибки​ на 28 %​A1​ в первом элементе​

​Значение​

​ функция появилась только​Если ссылка пуста, в​=ЕСЛИ(СРЗНАЧ(D2:D5)>50;СУММ(E2:E5);0)​Добавление ячеек в окно​Исправление ошибки #ЧИСЛО!​ и краткое описание.​Работа с данными​ как значения в​ прямо в ячейку,​ A3. Другой пример:​ небуквенные символы, его​ знака равенства (=)​ формул. Для получения​.​ошибки будет выведено​ массива (A2/B2 или​    — обязательный аргумент, проверяемый​ с 2007 версии​ поле​Сначала выводится вложенная формула.​ контрольного значения​Эта ошибка отображается в​Статья​нажмите кнопку​

​ смежных формулах различаются​​ оно сохраняется как​ если ввести =ABS(-2​ необходимо заключить в​Если не указать знак​ справки по конкретным​Чтобы использовать функцию ЕСЛИОШИБКА​ значение ОШИБКА!, в​ деление 210 на​ на возникновение ошибок.​ Microsoft Excel. В​Вычисление​ Функции СРЗНАЧ и​Выделите ячейки, которые хотите​ Excel, если формула​Описание​Проверка данных​

Сообщение Excel, появляющееся при добавлении запятой в значение

У вас есть вопрос об определенной функции?

​ на одну строку,​ значение ошибки, но​

Помогите нам улучшить Excel

​ 134), Excel выведет​ одиночные кавычки (‘),​ равенства, все введенное​ ошибкам поищите ответ​ с уже имеющейся​ противном случае -​ 35), не обнаруживает​

support.office.com

Поиск ошибок в формулах

​Значение_при_ошибке​​ более ранних версиях​отображается нулевое значение​ СУММ вложены в​ просмотреть.​ или функция содержит​Исправление ошибки ;#​.​ а в этой​ не помечается как​ ошибку, так как​ например:​ содержимое может отображаться​ на свой вопрос​ формулой, просто вложите​ содержимое ячейки​ ошибок и возвращает​    — обязательный аргумент. Значение,​ приходилось использовать функции​ (0).​ функцию ЕСЛИ.​

​Чтобы выделить все ячейки​ недопустимые числовые значения.​Эта ошибка отображается в​Выберите лист, на котором​ формуле — на​ ошибка. Но если​ функция ABS принимает​=’Данные за квартал’!D3 или​ как текст или​

​ или задайте его​​ готовую формулу в​A1​ результат вычисления по​ возвращаемое при ошибке​ЕОШ (ISERROR)​Некоторые функции вычисляются заново​Диапазон ячеек D2:D5 содержит​ с формулами, на​Вы используете функцию, которая​ Excel, если столбец​ требуется проверить наличие​ 8 строк. В​ на эту ячейку​ только один аргумент:​

Ссылка на форум сообщества Excel

Ввод простой формулы

​ =‘123’!A1​ дата. Например, при​ на форуме сообщества​ функцию ЕСЛИОШИБКА:​.​ формуле​ при вычислении по​и​ при каждом изменении​

​ значения 55, 35,​

​ вкладке​ выполняет итерацию, например​ недостаточно широк, чтобы​ ошибок.​ данном случае ожидаемой​

Части формулы

​ ссылается формула из​

  1. ​=ABS(-2134)​.​ вводе выражения​ Microsoft Excel.​=ЕСЛИОШИБКА(ЕСЛИ(E2​ЕСЛИ — одна из самых​6​

  2. ​ формуле. Возможны следующие​ЕНД (ISNA)​ листа, так что​ 45 и 25,​Главная​

  3. ​ ВСД или ставка?​ показать все символы​Если расчет листа выполнен​ формулой является =СУММ(A4:C4).​

  4. ​ другой ячейки, эта​.​Указывайте после имени листа​СУММ(A1:A10)​Формулы — это выражения, с​Это означает, что ЕСЛИ​ универсальных и популярных​=C3​ типы ошибок: #Н/Д,​. Эти функции похожи​ результаты в диалоговом​

    ​ поэтому функция​​в группе​ Если да, то​​ в ячейке, или​​ вручную, нажмите клавишу​Если используемые в формуле​ формула возвращает значение​Вы можете использовать определенные​ восклицательный знак (!),​в Excel отображается​ помощью которых выполняются​ в результате вычисления​ функций в Excel,​Выполняет проверку на предмет​ #ЗНАЧ!, #ССЫЛКА!, #ДЕЛ/0!,​ на​ окне​СРЗНАЧ(D2:D5)​Редактирование​ #NUM! ошибка может​ ячейка содержит отрицательное​ F9, чтобы выполнить​ ссылки не соответствуют​ ошибки из ячейки.​

​ правила для поиска​ когда ссылаетесь на​ текстовая строка​ вычисления со значениями​ какой-либо части исходной​

Функция СУММ

​ которая часто используется​​ ошибки в формуле​​ #ЧИСЛО!, #ИМЯ? и​

​ЕСЛИОШИБКА​​Вычисление формулы​​возвращает результат 40.​

Исправление распространенных ошибок при вводе формул

​нажмите кнопку​ быть вызвана тем,​ значение даты или​ расчет повторно.​ ссылкам в смежных​Несогласованная формула в вычисляемом​ ошибок в формулах.​

​ него в формуле​

​СУММ(A1:A10)​

​ на листе. Формула​ формулы возвращается ошибка,​

​ в одной формуле​ в первом аргументе​ #ПУСТО!.​, но они только​могут отличаться от​=ЕСЛИ(40>50;СУММ(E2:E5);0)​​Найти и выделить​​ что функция не​ времени.​​Если диалоговое окно​​ формулах, приложение Microsoft​ столбце таблицы.​​ Они не гарантируют​​ ​вместо результата вычисления,​​ начинается со знака​​ выводится значение 0,​ несколько раз (иногда​​ во втором элементе​​Если «значение» или «значение_при_ошибке»​ проверяют наличие ошибок​ тех, которые отображаются​

​Диапазон ячеек D2:D5 содержит​(вы также можете​

​ может найти результат.​Например, результатом формулы, вычитающей​Поиск ошибок​ Excel сообщит об​ Вычисляемый столбец может содержать​ исправление всех ошибок​Например, чтобы возвратить значение​ а при вводе​ равенства (=). Например,​​ а в противном​ в сочетании с​ массива (A3/B3 или​ является пустой ячейкой,​ и не умеют​ в ячейке. Это​ значения 55, 35,​ нажать клавиши​ Инструкции по устранению​

​ дату в будущем​не отображается, щелкните​

​ ошибке.​ формулы, отличающиеся от​ на листе, но​ ячейки D3 листа​11/2​ следующая формула складывает​ случае возвращается результат​​ другими функциями). К​​ деление 55 на​​ функция ЕСЛИОШИБКА рассматривает​​ заменять их на​ функции​

​ 45 и 25,​

​CTRL+G​ см. в разделе​ из даты в​ вкладку​

​Формулы, не охватывающие смежные​

​ основной формулы столбца,​​ могут помочь избежать​​ «Данные за квартал»​в Excel показывается​ числа 3 и​​ выражения ЕСЛИ. Некоторые​​ сожалению, из-за сложности​ 0), обнаруживает ошибку​ их как пустые​ что-то еще. Поэтому​СЛЧИС​ поэтому функция СРЗНАЧ(D2:D5)​или​ справки.​

​ прошлом (=15.06.2008-01.07.2008), является​Формулы​ ячейки.​

​ что приводит к​ распространенных проблем. Эти​ в той же​ дата​

​ 1:​ пользователи при создании​ конструкции выражений с​

​ «деление на 0″​ строковые значения («»).​ приходилось использовать их​,​ возвращает результат 40.​CONTROL+G​Исправление ошибки #ССЫЛКА!​ отрицательное значение даты.​, выберите​ Ссылки на данные, вставленные​ возникновению исключения. Исключения​ правила можно включать​​ книге, воспользуйтесь формулой​11.фев​​=3+1​

​ формул изначально реализуют​ ЕСЛИ легко столкнуться​ и возвращает «значение_при_ошибке»​Если «значение» является формулой​​ обязательно в связке​

​ОБЛАСТИ​=ЕСЛИ(ЛОЖЬ;СУММ(E2:E5);0)​на компьютере Mac).​Эта ошибка отображается в​Совет:​​Зависимости формул​​ между исходным диапазоном​

​ вычисляемого столбца возникают​ и отключать независимо​

​=’Данные за квартал’!D3​(предполагается, что для​Формула также может содержать​ обработку ошибок, однако​

​ с ошибкой #ЗНАЧ!.​Ошибка при вычислении​ массива, функция ЕСЛИОШИБКА​ с функцией проверки​,​​Поскольку 40 не больше​​ Затем выберите​ Excel при наличии​ Попробуйте автоматически подобрать размер​и нажмите кнопку​

​ и ячейкой с​ при следующих действиях:​ друг от друга.​.​ ячейки задан формат​ один или несколько​ делать это не​​ Обычно ее можно​=C4​​ возвращает массив результатов​ЕСЛИ (IF)​ИНДЕКС​ 50, выражение в​Выделить группу ячеек​ недопустимой ссылки на​

​ ячейки с помощью​​Поиск ошибок​ формулой, могут не​Ввод данных, не являющихся​Существуют два способа пометки​Указывайте путь к внешним​Общий​ из таких элементов:​ рекомендуется, так как​ подавить, добавив в​

​Выполняет проверку на предмет​ для каждой ячейки​

​, создавая вложенные конструкции​,​ первом аргументе функции​и​ ячейку. Например, вы​ двойного щелчка по​​.​​ включаться в формулу​ формулой, в ячейку​ и исправления ошибок:​ книгам​), а не результат​ функции, ссылки, операторы​ обработчик подавляет возможные​ формулу функции для​ ошибки в формуле​ диапазона, указанного в​

​ типа:​СМЕЩ​ ЕСЛИ (аргумент лог_выражение)​Формулы​​ удалили ячейки, на​​ заголовкам столбцов. Если​Если вы ранее не​ автоматически. Это правило​ вычисляемого столбца.​ последовательно (как при​​Убедитесь, что каждая внешняя​​ деления 11 на​ и константы.​ ошибки и вы​ обработки ошибок, такие​ в первом аргументе​ значении. См. второй​Такой вариант ощутимо медленне​,​ имеет значение ЛОЖЬ.​.​ которые ссылались другие​​ отображается # #​​ проигнорировали какие-либо ошибки,​

Исправление распространенных ошибок в формулах

​ позволяет сравнить ссылку​Введите формулу в ячейку​ проверке орфографии) или​ ссылка содержит имя​ 2.​Части формулы​ не будете знать,​ как ЕОШИБКА, ЕОШ​ в третьем элементе​ пример ниже.​ работает и сложнее​

​ЯЧЕЙКА​Функция ЕСЛИ возвращает значение​На вкладке​ формулы, или вставили​ #, так как​ вы можете снова​ в формуле с​ вычисляемого столбца и​

​ сразу при появлении​ книги и путь​Следите за соответствием открывающих​Функции: включены в _з0з_,​​ правильно ли работает​​ или ЕСЛИОШИБКА.​ массива (A4/B4 или​Скопируйте образец данных из​ для понимания, так​,​ третьего аргумента (аргумент​Формулы​ поверх них другие​ Excel не может​

Включение и отключение правил проверки ошибок

  1. ​ проверить их, выполнив​ фактическим диапазоном ячеек,​​ нажмите​​ ошибки во время​​ к ней.​​ и закрывающих скобок​​ функции обрабатываются формулами,​​ формула. Если вам​
    ​Если имеется ссылка на​ деление «» на​​ следующей таблицы и​ что лучше использовать​​ДВССЫЛ​

    ​ значение_если_ложь). Функция СУММ​​в группе​ Изображение кнопки Office​ ячейки.​​ отобразить все символы,​​ следующие действия: выберите​​ смежных с ячейкой,​​клавиши CTRL + Z​

  2. ​ ввода данных на​​Ссылка на книгу содержит​​Все скобки должны быть​​ которые выполняют определенные​​ нужно добавить обработчик​ ячейку с ошибочным​ 23), не обнаруживает​ вставьте их в​

    Ячейка с неправильной формулой

  3. ​ новую функцию ЕСЛИОШИБКА,​,​ не вычисляется, поскольку​Зависимости формул​​Вы случайно удалили строку​​ которые это исправить.​

  4. ​файл​​ которая содержит формулу.​​или кнопку​ листе.​ имя книги и​

    • ​ парными (открывающая и​ вычисления. Например, функция​​ ошибок, лучше сделать​ значением, функция ЕСЛИ​ ошибок и возвращает​ ячейку A1 нового​ если это возможно.​ЧСТРОК​ она является вторым​нажмите кнопку​ или столбец? Мы​Исправление ошибки #ДЕЛ/0!​>​

      ​ Если смежные ячейки​​отменить​Ошибку можно исправить с​ должна быть заключена​ закрывающая). Если в​ Пи () возвращает​ это тогда, когда​ возвращает ошибку #ЗНАЧ!.​ результат вычисления по​ листа Excel. Чтобы​ArkaIIIa​,​

    • ​ аргументом функции ЕСЛИ​Окно контрольного значения​​ удалили столбец B​Эта ошибка отображается в​Параметры​ содержат дополнительные значения​_з0з_ на​ помощью параметров, отображаемых​ в квадратные скобки​

      • ​ формуле используется функция,​ значение числа Пи:​ вы будете уверены,​

      • ​Решение​ формуле​ отобразить результаты формул,​​: Господа, помогите, пожалуйста,​​ЧИСЛСТОЛБ​​ (аргумент значение_если_истина) и​​.​​ в этой формуле​​ Excel, если число​

      • ​>​ и не являются​панели быстрого доступа​ приложением Excel, или​

      • ​ (​ для ее правильной​ 3,142…​ что формула работает​: используйте с функцией​0​ выделите их и​

      • ​ разобраться с проблемой.​,​ возвращается только тогда,​Нажмите кнопку​ = SUM (A2,​ делится на ноль​

    • ​формулы​ пустыми, Excel отображает​​.​ игнорировать, щелкнув команду​[Имякниги.xlsx]​ работы важно, чтобы​Ссылки: ссылки на отдельные​ правильно.​ ЕСЛИ функции для​Примечание. Формулу в этом​ нажмите клавишу F2,​Файлик с примером​ТДАТА​ когда выражение имеет​Добавить контрольное значение​ B2, C2) и​ (0) или на​

    • ​. В Excel для​ рядом с формулой​Ввод новой формулы в​​Пропустить ошибку​). В ссылке также​ все скобки стояли​ ячейки или диапазоны​Примечание:​ обработки ошибок, такие​ примере необходимо вводить​ а затем —​ в приложении.​,​ значение ИСТИНА.​​.​​ рассмотрим, что произошло.​

    • ​ ячейку без значения.​ Mac в​​ ошибку.​ вычисляемый столбец, который​. Ошибка, пропущенная в​ должно быть указано​ в правильных местах.​ ячеек. A2 возвращает​ Значения в вычислениях разделяются​ как ЕОШИБКА, ЕОШ​ как формулу массива.​ клавишу ВВОД. При​Есть определенная программа,​СЕГОДНЯ​Выделите ячейку, которую нужно​Убедитесь, что вы выделили​Нажмите кнопку​Совет:​меню Excel выберите Параметры​Например, при использовании этого​ уже содержит одно​ конкретной ячейке, не​

      Excel сообщает об ошибке, если формула не похожа на смежные.

      ​ имя листа в​ Например, формула​ значение в ячейке​ точкой с запятой.​ и ЕСЛИОШИБКА. В​ После копирования этого​

    • ​ необходимости измените ширину​ которая выгружает отчеты​​,​ вычислить. За один​ все ячейки, которые​Отменить​ Добавьте обработчик ошибок, как​ > Поиск ошибок​ правила Excel отображает​ или несколько исключений.​ будет больше появляться​ книге.​=ЕСЛИ(B5 не будет работать,​ A2.​ Если разделить два​ следующих разделах описывается,​ примера на пустой​ столбцов, чтобы видеть​ в Эксель в​

      ​СЛУЧМЕЖДУ​ раз можно вычислить​ хотите отследить, и​​(или клавиши CTRL+Z),​​ в примере ниже:​.​ ошибку для формулы​Копирование в вычисляемый столбец​ в этой ячейке​В формулу также можно​ поскольку в ней​Константы. Числа или текстовые​ значения запятой, функция​

      Excel сообщает об ошибке, если формула пропускает ячейку в диапазоне

    • ​ как использовать функции​​ лист выделите диапазон​​ все данные.​ том виде, в​.​ только одну ячейку.​ нажмите кнопку​ чтобы отменить удаление,​ =ЕСЛИ(C2;B2/C2;0).​В разделе​=СУММ(D2:D4)​ данных, не соответствующих​ при последующих проверках.​ включить ссылку на​ две закрывающие скобки​ значения, введенные непосредственно​ ЕСЛИ будет рассматривать​ ЕСЛИ, ЕОШИБКА, ЕОШ​ ячеек (C2:C4), нажмите​Котировка​

    • ​ котором это указано​Отображение связей между формулами​​Откройте вкладку​Добавить​ измените формулу или​Исправление ошибки #Н/Д​Поиск ошибок​, поскольку ячейки D5,​

      ​ формуле столбца. Если​ Однако все пропущенные​ книгу, не открытую​ и только одна​ в формулу, например​ их как одно​ и ЕСЛИОШИБКА в​ клавишу F2, а​Единиц продано​ в табличке «Данные».​ и ячейками​Формулы​

      Excel сообщает об ошибке, если формула ссылается на пустые ячейки

    • ​.​ используйте ссылку на​​Эта ошибка отображается в​выберите​ D6 и D7,​ копируемые данные содержат​ ранее ошибки можно​​ в Excel. Для​​ открывающая (требуется одна​​ 2.​​ дробное значение. После​​ формуле, если аргумент​​ затем нажмите клавиши​

Последовательное исправление распространенных ошибок в формулах

  1. ​210​ Т.е. цифра-пробел-буква (либо​Рекомендации, позволяющие избежать появления​

  2. ​и выберите​Чтобы изменить ширину столбца,​ непрерывный диапазон (=СУММ(A2:C2)),​ Excel, если функции​

    ​Сброс пропущенных ошибок​​ смежные с ячейками,​​ формулу, эта формула​ сбросить, чтобы они​​ этого необходимо указать​​ открывающая и одна​​Операторы: оператор * (звездочка)​​ процентных множителей ставится​​ ссылается на ошибочные​​ CTRL + SHIFT​

  3. ​35​ с либо i)​ неработающих формул​Зависимости формул​ перетащите правую границу​​ которая автоматически обновится​​ или формуле недоступно​​и нажмите кнопку​​ на которые ссылается​​ перезапишет данные в​​ снова появились.​ полный путь к​​ закрывающая). Правильный вариант​ служит для умножения​​ символ %. Он​

    ​ значения.​​ + ВВОД.​​55​​Задача сделать табличку,​​Тот, кто никогда не​​>​​ его заголовка.​

    Поиск ошибок

    ​ при удалении столбца​​ значение.​ОК​ формула, и ячейкой​ вычисляемом столбце.​В Excel для Windows​

    ​ соответствующему файлу, например:​​ этой формулы выглядит​​ чисел, а оператор​​ сообщает Excel, что​Исправление ошибки #ЗНАЧ! в​

    Перетащите диалоговое окно

  4. ​Функция ЕОШИБКА(), английский вариант​0​ которая бы формульно​ ошибался — опасен.​Вычислить формулу​

  5. ​Чтобы открыть ячейку, ссылка​​ B.​​Если вы используете функцию​

​.​​ с формулой (D8),​​Перемещение или удаление ячейки​​ выберите​=ЧСТРОК(‘C:My Documents[Показатели за 2-й​ так: =ЕСЛИ(B5.​

Исправление распространенных ошибок по одной

  1. ​ ^ (крышка) — для​ значение должно обрабатываться​​ функции СЦЕПИТЬ​ Значок​ ISERROR(), проверяет на​23​ анализировала эти данные.​(Книга самурая)​.​

    ​ на которую содержится​​Исправление ошибки #ЗНАЧ!​​ ВПР, что пытается​Примечание:​ содержат данные, на​

    Перетащите диалоговое окно

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

​ из другой области​файл​ квартал.xlsx]Продажи’!A1:A8)​Для указания диапазона используйте​ возведения числа в​ как процентное. В​Исправление ошибки #ЗНАЧ! в​ равенство значениям #Н/Д,​Формула​ В случае, если​

​Ошибки случаются. Вдвойне обидно,​Нажмите кнопку​ в записи панели​Эта ошибка отображается в​ найти в диапазоне​

​ Сброс пропущенных ошибок применяется​

​ которые должна ссылаться​

​ листа, если на​

​>​. Эта формула возвращает​ двоеточие​ степень. С помощью​ противном случае такие​ функции СРЗНАЧ или​ #ЗНАЧ!, #ССЫЛКА!, #ДЕЛ/0!,​Описание​

​ в ячейке данных​ когда они случаются​Вычислить​ инструментов «Окно контрольного​ Excel, если в​

​ поиска? Чаще всего​​ ко всем ошибкам,​ формула.​ эту ячейку ссылалась​Параметры​ количество строк в​Указывая диапазон ячеек, разделяйте​ + и –​ значения пришлось бы​ СУММ​

Ошибка с #

​ #ЧИСЛО!, #ИМЯ? или​

​Результат​ есть буква i,​ не по твоей​, чтобы проверить значение​ значения», дважды щелкните​

​ формуле используются ячейки,​​ это не так.​ которые были пропущены​Незаблокированные​

Для скрытия ошибок можно использовать функцию обработки ошибок, например ЕСЛИ

​ одна из строк​

​>​ диапазоне ячеек с​ с помощью двоеточия​ можно складывать и​

​ вводить как дробные​Примечания:​ #ПУСТО! и возвращает​=ЕСЛИОШИБКА(A2/B2;»Ошибка при вычислении»)​ чтобы вся ячейка​

​ вине. Так в​ подчеркнутой ссылки. Результат​ запись.​ содержащие данные не​Попробуйте использовать ЕСЛИОШИБКА для​

​ на всех листах​

Ошибка #Н/Д

​ячейки, содержащие формулы​

​ в вычисляемом столбце.​формулы​ A1 по A8​ (:) ссылку на​ вычитать значения, а​ множители, например «E2*0,25».​

​ ​​ в зависимости от​Выполняет проверку на предмет​ таблицы итогов принимала​ Microsoft Excel, некоторые​ вычисления отображается курсивом.​Примечание:​ того типа.​ подавления #N/а. В​ активной книги.​

Ошибка #ИМЯ? выводится, если в имени функции есть опечатка

​: формула не блокируется​

​Ячейки, которые содержат годы,​или​ в другой книге​ первую ячейку и​ с помощью /​Задать вопрос на форуме​Функция ЕСЛИОШИБКА появилась в​

​ этого ИСТИНА или​​ ошибки в формуле​ значение «i», а​ функции и формулы​Если подчеркнутая часть формулы​ Ячейки, содержащие внешние ссылки​Используются ли математические операторы​ этом случае вы​​Совет:​ для защиты. По​​ представленные 2 цифрами.​в Excel для​ (8).​ ссылку на последнюю​ — делить их.​​ сообщества, посвященном Excel​ Excel 2007. Она​

Ошибка #ПУСТО!

​ ЛОЖЬ.​

​ в первом аргументе​ если i нет,​ могут выдавать ошибки​ является ссылкой на​

​ на другие книги,​ (+,-, *,/, ^)​ можете использовать следующие​ Советуем расположить диалоговое окно​ умолчанию все ячейки​ Ячейка содержит дату в​ Mac в​Примечание:​ ячейку в диапазоне.​Примечание:​У вас есть предложения​

​ гораздо предпочтительнее функций​

​ЕОШИБКАзначение​ (деление 210 на​ то, соответственно, вся​ не потому, что​ другую формулу, нажмите​ отображаются на панели​ с разными типами​ возможности:​Поиск ошибок​

​ на листе заблокированы,​ текстовом формате, которая​меню Excel выберите Параметры​ Если полный путь содержит​ Например:​ Для некоторых функций требуются​ по улучшению следующей​

​ ЕОШИБКА и ЕОШ,​​)​​ 35), не обнаруживает​ ячейка должна иметь​ вы накосячили при​ кнопку Шаг с​ инструментов «Окно контрольного​ данных? Если это​=ЕСЛИОШИБКА(ВПР(D2;$D$6:$E$8;2;ИСТИНА);0)​непосредственно под строкой​

Ошибка #ЗНАЧ! отображается в Excel при наличии недопустимой ссылки на ячейку

​ поэтому их невозможно​

​ при использовании в​ > Поиск ошибок​ пробелы, как в​=СУММ(A1:A5)​ элементы, которые называются​

​ версии Excel? Если​ так как не​Значение​ ошибок и возвращает​ вид «c».​ вводе, а из-за​ заходом, чтобы отобразить​ значения» только в​ так, попробуйте использовать​

Ошибка #ЗНАЧ!

Просмотр формулы и ее результата в окне контрольного значения

​Исправление ошибки #ИМЯ?​ формул.​ изменить, если лист​ формулах может быть​.​ приведенном выше примере,​(а не формула​аргументами​ да, ознакомьтесь с​ требует избыточности при​- ссылка на​ результат вычисления по​Я попробовал это​ временного отсутствия данных​ другую формулу в​ случае, если эти​ функцию. В этом​Эта ошибка отображается, если​

Окно контрольного значения позволяет отслеживать формулы на листе

​Нажмите одну из управляющих​ защищен. Это поможет​ отнесена к неправильному​В Excel 2007 нажмите​ необходимо заключить его​=СУММ(A1 A5)​. Аргументы — это​ темами на портале​ построении формулы. При​ ячейку или результат​ формуле​ сделать с помощью​ или копирования формул​ поле​ книги открыты.​

​ случае функция =​​ Excel не распознает​ кнопок в правой​ избежать случайных ошибок,​

​ веку. Например, дата​кнопку Microsoft Office​

  1. ​ в одиночные кавычки​, которая вернет ошибку​

    ​ значения, которые используются​ пользовательских предложений для​ использовании функций ЕОШИБКА​​ вычисления выражения, которое​​6​​ вспомогательной таблицы и​​ «с запасом» на​​Вычисление​​Удаление ячеек из окна​ SUM (F2: F5)​​ текст в формуле.​​ части диалогового окна.​​ таких как случайное​​ в формуле =ГОД(«1.1.31»)​и выберите​​ (в начале пути​​ #ПУСТО!).​​ некоторыми функциями для​​ Excel.​

    Диалоговое окно

  2. ​ и ЕОШ формула​​ необходимо проверить.​​=ЕСЛИОШИБКА(A3/B3;»Ошибка при вычислении»)​​ формулы «ПОИСК». Но​​ избыточные ячейки. Классический​​. Нажмите кнопку​​ контрольного значения​

  3. ​ устранит проблему.​​ Например имя диапазона​​ Доступные действия зависят​

    Нажмите кнопку

  4. ​ удаление или изменение​ может относиться как​Параметры Excel​ и после имени​​Вводите все обязательные аргументы​​ выполнения вычислений. При​

    Введите диапазон ячеек в поле

  5. ​Примечание:​ вычисляется дважды: сначала​Функции ЕОШИБКА() в отличие​

  6. ​Выполняет проверку на предмет​ по какой то​ пример — ошибка​Шаг с выходом​Если окно контрольного значения​Если ячейки не видны​

    ​ или имя функции​​ от типа ошибки.​ формул. Эта ошибка​ к 1931, так​>​ книги перед восклицательным​У некоторых функций есть​ необходимости аргументы помещаются​

​ Мы стараемся как можно​ проверяется наличие ошибок,​

  1. ​ от функции ЕОШ()​ ошибки в формуле​ причине, формула ЕСЛИОШИБКА​​ деления на ноль​​, чтобы вернуться к​​ не отображается, на​​ на листе, для​​ написано неправильно.​​Нажмите кнопку​

  2. ​ указывает на то,​ и к 2031​

    ​Формулы​ знаком).​ обязательные аргументы. Старайтесь​

  3. ​ между круглыми скобками​​ оперативнее обеспечивать вас​​ а затем возвращается​

    Удалить контрольное значение

Вычисление вложенной формулы по шагам

​ считает, что значение​ в первом аргументе​ не реагирует на​ при вычислении среднего:​ предыдущей ячейке и​ вкладке​ просмотра их и​Примечание:​​Далее​​ что ячейка настроена​ году. Используйте это​.​Числа нужно вводить без​ также не вводить​ функции (). Функция​ актуальными справочными материалами​ результат. При использовании​

Команда

​ #Н/Д является ошибкой.​ (деление 55 на​

​ результаты поиска. Почему​

​Причем заметьте, что итоги​

​ формуле.​Формула​ содержащихся в них​ Если вы используете функцию,​

​.​ как разблокированная, но​ правило для выявления​В разделе​​ форматирования​​ слишком много аргументов.​

​ ПИ не требует​

​ на вашем языке.​ функции ЕСЛИОШИБКА формула​ Т.е. =ЕОШИБКА(НД()) вернет​ 0), обнаруживает ошибку​ то она не​

​ в нашей таблице​

​Кнопка​в группе​ формул можно использовать​ убедитесь в том,​Примечание:​

​ лист не защищен.​ дат в текстовом​Поиск ошибок​Не форматируйте числа, которые​Вводите аргументы правильного типа​ аргументов, поэтому она​ Эта страница переведена​ вычисляется только один​ ИСТИНА, а =ЕОШ(НД())​ «деление на 0″​

  1. ​ считает, что 3​ тоже уже не​Шаг с заходом​Зависимости формул​

  2. ​ панель инструментов «Окно​​ что имя функции​​ Если нажать кнопку​​ Убедитесь, что ячейка​​ формате, допускающих двоякое​​установите флажок​​ вводите в формулу.​

  3. ​В некоторых функциях, например​​ пуста. Некоторым функциям​​ автоматически, поэтому ее​ раз.​ вернет ЛОЖЬ.​

    ​ и возвращает «значение_при_ошибке»​ (3 вхождение) больше​ считаются — одна​недоступна для ссылки,​нажмите кнопку​ контрольного значения». С​ написано правильно. В​​Пропустить ошибку​​ не нужна для​​ толкование.​​Включить фоновый поиск ошибок​ Например, если нужно​СУММ​

    ​ требуется один или​​ текст может содержать​​Конструкция =ЕСЛИОШИБКА(Формула;0) гораздо лучше​Для обработки ошибок #Н/Д,​Ошибка при вычислении​ чем 1, что​ ошибка начинает порождать​ если ссылка используется​Окно контрольного значения​

  4. ​ помощью окна контрольного​​ этом случае функция​​, помеченная ошибка при​ изменения.​Числа, отформатированные как текст​

  5. ​. Любая обнаруженная ошибка​ ввести в формулу​​, необходимо использовать числовые​​ несколько аргументов, и​

  6. ​ неточности и грамматические​ конструкции =ЕСЛИ(ЕОШИБКА(Формула;0;Формула)).​​ #ЗНАЧ!, #ССЫЛКА!, #ДЕЛ/0!,​​=ЕСЛИОШИБКА(A4/B4;»Ошибка при вычислении»)​

​ задано в формуле.​​ другие, передаваясь по​

  • ​ в формуле во​.​​ значения удобно изучать,​​ сумм написана неправильно.​​ последующих проверках будет​​Формулы, которые ссылаются на​ или с предшествующим​ будет помечена треугольником​ значение 1 000 рублей,​

  • ​ аргументы. В других​ она может оставить​​ ошибки. Для нас​​Если синтаксис функции составлен​ #ЧИСЛО!, #ИМЯ? или​

  • ​Выполняет проверку на предмет​Помогите, пожалуйста, советом,​ цепочке от одной​ второй раз или​Выделите ячейки, которые нужно​​ проверять зависимости или​​ Удалите слова «e»​ пропускаться.​ пустые ячейки.​ апострофом.​​ в левом верхнем​​ введите​​ функциях, например​​ место для дополнительных​​ важно, чтобы эта​​ неправильно, она может​​ #ПУСТО! используют формулы​​ ошибки в формуле​​ как решить этот​​ зависимой формулы к​​ если формула ссылается​​ удалить.​​ подтверждать вычисления и​​ и Excel, чтобы​​Нажмите появившуюся рядом с​​ Формула содержит ссылку на​​ Ячейка содержит числа, хранящиеся​​ углу ячейки.​​1000​​ЗАМЕНИТЬ​​ аргументов. Для разделения​​ статья была вам​

См. также

​ вернуть ошибку #ЗНАЧ!.​ следующего вида:​

​ в первом аргументе​ вопрос.​

support.office.com

Перехват ошибок в формулах функцией ЕСЛИОШИБКА (IFERROR)

​ другой. Так что​ на ячейку в​
​Чтобы выделить несколько ячеек,​

​ результаты формул на​ исправить их.​ ячейкой кнопку​ пустую ячейку. Это​ как текст. Обычно​Чтобы изменить цвет треугольника,​. Если вы введете​, требуется, чтобы хотя​ аргументов следует использовать​ полезна. Просим вас​Решение​=ЕСЛИ(ЕОШИБКА(A1);»ОШИБКА!»;A1) или =ЕСЛИ(ЕОШИБКА(A1/A2);»ОШИБКА!»;A1/A2)​ (деление «» на​Заранее благодарю.​ из-за одной ошибочной​ отдельной книге.​ щелкните их, удерживая​

Ошибка деления на ноль

​ больших листах. При​Исправление ошибки #ПУСТО!​Поиск ошибок​ может привести к​ это является следствием​ которым помечаются ошибки,​ какой-нибудь символ в​ бы один аргумент​ запятую или точку​ уделить пару секунд​: проверьте правильность синтаксиса.​В случае наличия в​ 23), не обнаруживает​

​Michael_S​ ячейки, в конце​Продолжайте нажимать кнопку​ нажатой клавишу CTRL.​ этом вам не​Эта ошибка отображается в​и выберите нужный​ неверным результатам, как​ импорта данных из​ выберите нужный цвет​ числе, Excel будет​ имел текстовое значение.​ с запятой (;)​

​ и сообщить, помогла​

​ Ниже приведен пример​

​ ячейке​ ошибок и возвращает​:​

Перехват ошибки функцией ЕСЛИОШИБКА IFERROR

​ концов, может перестать​Вычислить​

​Нажмите кнопку​ требуется многократно прокручивать​ Excel, когда вы​ пункт. Доступные команды​ показано в приведенном​ других источников. Числа,​​ в поле​​ считать его разделителем.​​ Если использовать в​​ в зависимости от​ ли она вам,​​ правильно составленной формулы,​​А1​ результат вычисления по​200?’200px’:»+(this.scrollHeight+5)+’px’);»>=ЕСЛИ(ЕОШ(ПОИСК(«i»;C4));ПРАВСИМВ(C4;1);»i»)​ работать весь расчет.​, пока не будут​Удалить контрольное значение​ экран или переходить​ указываете пересечение двух​​ зависят от типа​​ далее примере.​ хранящиеся как текст,​

Перехват ошибок в функциями ЕСЛИ и ЕОШ

​Цвет индикаторов ошибок​ Если вам нужно,​ качестве аргумента данные​ параметров расположения.​ с помощью кнопок​ в которой функция​

planetaexcel.ru

Вопрос по формуле ЕСЛИОШИБКА

​ошибки или ошибки​​ формуле.​ArkaIIIa​
​Для лечения подобных ситуаций​ вычислены все части​
​.​ к разным частям​ областей, которые не​ ошибки. Первый пункт​Предположим, требуется найти среднее​ могут стать причиной​.​ чтобы числа отображались​
​ неправильного типа, Excel​Например, функция СУММ требует​ внизу страницы. Для​ ЕСЛИ вкладывается в​ при вычислении выражения​0​: Michael_S,​ в Microsoft Excel​ формулы.​Иногда трудно понять, как​ листа.​ пересекаются. Оператором пересечения​ содержит описание ошибки.​
​ значение чисел в​ неправильной сортировки, поэтому​В разделе​ с разделителями тысяч​ может возвращать непредвиденные​ только один аргумент,​ удобства также приводим​ другую функцию ЕСЛИ​ A1/A2, формулой выводится​Котировка​Спасибо большое!​ есть мегаполезная функция​Чтобы посмотреть вычисление еще​
​ вложенная формула вычисляет​Эту панель инструментов можно​ является пробел, разделяющий​
​Если нажать кнопку​

​ приведенном ниже столбце​​ лучше преобразовать их​​Правила поиска ошибок​

​ или символами валюты,​​ результаты или ошибку.​
​ но у нее​

excelworld.ru

​ ссылку на оригинал​

Содержание

  1. Функция ИСТИНА
  2. Функция ЛОЖЬ
  3. Функция ЕСЛИОШИБКА
  4. Формула ЕСЛИ в Excel – примеры нескольких условий
  5. Основные операции
  6. Ведение простейших подсчётов
  7. Логический набор
  8. ИСКИЛИ
  9. ЕСЛИМН (УСЛОВИЯ) и ПЕРЕКЛЮЧ
  10. Оформление и примеры использования
  11. Работа с ПЕРЕКЛЮЧ
  12. Использование ЕСЛИОШИБКА
  13. И/ИЛИ
  14. Основные операторы
  15. Функции ЕОШИБКА и ЕПУСТО
  16. Пример применения функций
  17. Практический пример использования логических функций
  18. Логическая функция ИСКЛИЛИ в Excel
  19. Заключение

Функция ИСТИНА

Не принимает никаких аргументов и просто возвращает логическое значение «ИСТИНА».

Синтаксис: =ИСТИНА()

Функция ЛОЖЬ

Аналогична функции ИСТИНА, за исключением то, что возвращает противоположный результат ЛОЖЬ.

Синтаксис: =ЛОЖЬ()

Функция ЕСЛИОШИБКА

Предназначена для проверки возврата выражением ошибки. Если ошибка обнаружена, то она возвращает значение второго аргумента, иначе первого.

Функция принимает 2 аргумента, все они являются обязательными.

Синтаксис: =ЕСЛИОШИБКА(значение;значение_если_ошибка)

Пример использования функции:

В приведенном примере видно, что выражение в первом аргументе возвращает ошибку деления на ноль, но так как оно вложено в нашу функцию, то ошибка перехватывается и подменяется вторым аргументов, а именно строкой «Делить на ноль нельзя», которую мы ввели самостоятельно. Вместо данной строки могли бы быть другие функции, все зависит от поставленной перед Вами задачи.

Довольно часто количество возможных условий не 2 (проверяемое и альтернативное), а 3, 4 и более. В этом случае также можно использовать функцию ЕСЛИ, но теперь ее придется вкладывать друг в друга, указывая все условия по очереди. Рассмотрим следующий пример.

Нескольким менеджерам по продажам нужно начислить премию в зависимости от выполнения плана продаж. Система мотивации следующая. Если план выполнен менее, чем на 90%, то премия не полагается, если от 90% до 95% — премия 10%, от 95% до 100% — премия 20% и если план перевыполнен, то 30%. Как видно здесь 4 варианта. Чтобы их указать в одной формуле потребуется следующая логическая структура. Если выполняется первое условие, то наступает первый вариант, в противном случае, если выполняется второе условие, то наступает второй вариант, в противном случае если… и т.д. Количество условий может быть довольно большим. В конце формулы указывается последний альтернативный вариант, для которого не выполняется ни одно из перечисленных ранее условий (как третье поле в обычной формуле ЕСЛИ). В итоге формула имеет следующий вид.

Довольно часто количество возможных условий не 2 (проверяемое и альтернативное), а 3, 4 и более. В этом случае также можно использовать функцию ЕСЛИ, но теперь ее придется вкладывать друг в друга, указывая все условия по очереди. Рассмотрим следующий пример.

Нескольким менеджерам по продажам нужно начислить премию в зависимости от выполнения плана продаж. Система мотивации следующая. Если план выполнен менее, чем на 90%, то премия не полагается, если от 90% до 95% — премия 10%, от 95% до 100% — премия 20% и если план перевыполнен, то 30%. Как видно здесь 4 варианта. Чтобы их указать в одной формуле потребуется следующая логическая структура. Если выполняется первое условие, то наступает первый вариант, в противном случае, если выполняется второе условие, то наступает второй вариант, в противном случае если… и т.д. Количество условий может быть довольно большим. В конце формулы указывается последний альтернативный вариант, для которого не выполняется ни одно из перечисленных ранее условий (как третье поле в обычной формуле ЕСЛИ). В итоге формула имеет следующий вид.

Комбинация функций ЕСЛИ работает так, что при выполнении какого-либо указанно условия следующие уже не проверяются. Поэтому важно их указать в правильной последовательности. Если бы мы начали проверку с B2<1, то условия B2<0,9 и B2<0,95 Excel бы просто «не заметил», т.к. они входят в интервал B2<1 который проверился бы первым (если значение менее 0,9, само собой, оно также меньше и 1). И тогда у нас получилось бы только два возможных варианта: менее 1 и альтернативное, т.е. 1 и более.

При написании формулы легко запутаться, поэтому рекомендуется смотреть на всплывающую подсказку.

В конце нужно обязательно закрыть все скобки, иначе эксель выдаст ошибку

Основные операции

Создание формулы в Excel не сопровождается особыми сложностями, если пользователь полноценно освоит некоторые азы работы с табличным редактором. Начинать изучение этого офисного приложения лучше всего с тех вычислительных примеров, которые являются самыми простыми и максимально распространёнными. Это позволит понять суть и важные правила работы с табличным редактором.

Освоив простейшие азы, можно приступать к созданию логических формул.

Ведение простейших подсчётов

Для начала работы следует запустить само офисное приложение. Далее важно определиться, что должно посчитаться автоматически. Чаще всего к работе приступают, когда уже имеется числовая информация, на основе которой приходится осуществлять множественные операции при помощи калькулятора. Теперь эту счётную машинку нужно отложить в сторону и полностью довериться электронной таблице.

Запись любого числового выражения совершается со знака «=». Не выставив его, Excel воспримет введённый запрос, как текстовую запись, отобразит её, но не осуществить подсчёт.

Часто необходимо не просто осуществлять подсчёты, используя данные в таблице, а проводить анализ, сопровождаемый несколькими условиями. Опять-таки всё это проделывать самостоятельно вручную неразумно, когда имеются такие уникальные возможности Excel, способной выполнять любые требования пользователя.

В категории «Логические» самой распространённой является функция ЕСЛИ. Эта функция рассматривает предложенные варианты, а далее определяет, выполняется это условие или нет. Результат функции ЕСЛИ зависит от того, что в итоге желает видеть пользователь. А для того чтобы результат правильно отображался, следует знать, как задать условие в Excel.

Функция ЕСЛИ состоит из трёх аргументов:

  • Логического (основного) выражения (требование, которое пользователь желает проверить в таблице);
  • значения, отображающегося, если условие будет полностью соблюдаться;
  • значения, если заданное требование не выдерживается.

Итак, можно попробовать создать простейшую вычислительную таблицу, взяв за основу пример, где главной будет логическая функция ЕСЛИ.

В частности, в ячейку А1 ввести числовой показатель «5», а в ячейку А2 показатель «8». Если пользователю необходимо сравнить два показателя и выдать автоматический итог произведённых действий, составляется выражение, которое, безусловно, начинается со знака «равно»: =ЕСЛИ(А1>А2; «Больше»; «Меньше»). После введения этой записи в любую свободную ячейку, нажатия Enter, в ней сразу будет демонстрироваться ответ. Если пользователь заменит значения в А1 или А2, то ответ также автоматически перестроится.

В тех случаях, когда важно выявить несовпадение двух показателей, введённых в соседние столбцы, первоначально нужно вникнуть, как в Excel правильно записать условие неравно, после чего создать запрос, используя логические функции. Знак «неравно» в Excel обозначается двумя операторами — «<>». Соответственно, нужно записать так: =ЕСЛИ(А1<>А2; «Значения разные»; «Значения одинаковые»).

Логический набор

Количество логических функций меняется в зависимости от версии программы. В приложении 2007 года их было 7, впоследствие добавилось еще несколько. Список доступных логических операций можно посмотреть так:

  • зайти во вкладку «Формулы» на главной панели;
  • кликнуть по иконке fx с надписью «Вставить формулу
  • в появившемся окне выбрать категорию «Логические
  • внизу откроется список доступных операторов.

Большинство имеют аргументы, задающие условия применения. Формат записи следующий: «=оператор(аргумент1;аргумент2…)». Логическая запись включает в себя знаки сравнения.

ИСКИЛИ

Появилась в версии программы 2013. Реализует операцию «Исключающее ИЛИ». Написание аналогично «И»: =ИСКЛИЛИ(логический_вопрос1;логический_вопрос2;…) и может иметь до 255 аргументов.

Если присутствует только 2 варианта действия, то общий результат будет «ИСТИНА» при наличии одного аргумента с таким же ответом. В этом работа «ИСКИЛИ» совпадает с «ИЛИ». Если оба решения получат ответ ИСТИНА или ЛОЖЬ, то итог будет ЛОЖЬ. Для пояснения приведена следующая таблица:

Исходные данные Результат Примечания
=ИСКЛИЛИ(3>0; 4<1) ИСТИНА В итоге ИСТИНА, потому что одно из значений ИСТИНА.
=ИСКЛИЛИ(3<0; 4<1) ЛОЖЬ ЛОЖЬ, так как имеется 2 ответа ЛОЖЬ .
=ИСКЛИЛИ(3>0; 4>1) ЛОЖЬ ЛОЖЬ, так как имеется 2 ответа ИСТИНА

ЕСЛИМН (УСЛОВИЯ) и ПЕРЕКЛЮЧ

«ЕСЛИМН» и «ПЕРЕКЛЮЧ» появились в Excel 2016 и 2019 соответственно. Предназначены для облегчения составления формул, так как уменьшают количество вложений.

Способы вставки таблицы из Microsoft Excel в Word

«ЕСЛИМН» ранее называлась «УСЛОВИЯ». Введение ее связано с попыткой облегчить работу при вложении нескольких «ЕСЛИ». Не надо писать несколько раз «ЕСЛИ» и открывать многочисленные скобки. Синтаксис: «=ЕСЛИМН(условие1; значение1;условие2; значение2;условиe3; значение3…)». Можно создать до 127 условий.

«ПЕРЕКЛЮЧ» имеет следующую структуру: «=ПЕРЕКЛЮЧ(значение для переключения; значение, которое должно совпасть1…[2–126]; значение, возвращаемое при совпадении1…[2–126]; значение, возвращаемое при отсутствии совпадений)».

Первый аргумент указывает на местоположение проверяемого выражения, остальные присваивают ячейке первую совпавшую величину.

Оформление и примеры использования

Алгоритм написания логических формул в Эксель следующий:

  1. Нужно выделить пустую ячейку, в которую будет записываться формула и выводиться результат действия.
    Вписывать можно и в строке формул, после выделения ячейки.
  2. Перед формулами в программе ставится знак «=». Поставить его.
  3. Напечатать название оператора.
  4. После этого вписываются аргументы, если они есть. Начинается запись со знака «открывающаяся круглая скобка “(“».
  5. Аргументы вводятся последовательно через знак ”;”. Также, если после ввода названия функции нажать клавиши Ctrl + A, то откроется меню аргументов и вписать их можно здесь.
  6. В конце ставится символ «закрывающаяся круглая скобка “)”». Контролировать написание можно в строке формул.
  7. После завершения нажать кнопку ENTER. Результат появится в ячейке.

Работа с ПЕРЕКЛЮЧ

Сравнивает указанную величину в ячейке или формулу со списком данных и вписывает в ячейку первое совпавшее значение. Если совпадений не будет, и не проставлена величина по умолчанию, оператор выдаст ошибку «#Н/Д». Функция схожа с ЕСЛИМН, но в отличие от нее условие ставится точно, без сравнительных знаков.

Работа оператора иллюстрируется на рисунке.

Здесь вместо чисел 1, 2, 7 — нужно проставить прописью дни недели им соответствующие. Если будут другие цифры, то возвратится значение по умолчанию «Нет совпадений (No match)».

Использование ЕСЛИОШИБКА

Оператор используется для нахождения ошибки в таблице. Найдя ее, функция не пишет в ячейке какую-либо из ошибок, а возвращает указанный ответ, который может быть текстом, пустой строкой: =ЕСЛИОШИБКА(Что_проверять;Что_выводить_вместо_ошибки).

Например, нужно поделить значения в столбце А на величины в столбце В. Если по ошибке в строках стоят 0, то получится деление на 0.

Применение оператора «=ЕСЛИОШИБКА(A2/B2;»»)» скрывает ошибки.

Здесь сравнивается выражение A2/B2. В случае обнаружения ошибки в ячейку ставится пустая строка, указанная пробелом в кавычках ““.

ЕСЛИОШИБКА появилась в Excel 2007. До этого использовалась функция ЕОШИБКА, которая самостоятельно не могла обработать ошибку, так как имела только один аргумент, проверяющий указанную ячейку. Для ввода ответа в случае обнаружения ошибки, нужно было использовать оператор ЕСЛИ: «ЕСЛИ(ЕОШИБКА(А2/В2);”“;А2/В2)».

И/ИЛИ

Простые операторы, редко применяются без связки с другими функциями.

На рисунке показан принцип действия функции И.

Пример использования: «=И(A1>B1; A2<>25)». Здесь созданы два условия:

  1. Значение в ячейке А1 должно быть больше числа в В1.
  2. Число в А2 должно быть не равно 25.

При исполнении обоих получается ИСТИНА.

Если одно из заданий нарушено, получается ЛОЖЬ. В данном случае число в А1 меньше чем в В1.

Ниже представлен алгоритм функционирования оператора ИЛИ.

Пусть даны 3 выражения: A1>B1; A2>B2; A3>B3. Требуется применить к ним действие ИЛИ: «=ИЛИ(A1>B1; A2>B2; A3>B3)». Возможные варианты показаны на рисунках:

Здесь конечный результат ИСТИНА, так как из трех выражений одно верно: A3>B3. На следующем изображении функция выдала ответ «ЛОЖЬ», так как на все вопросы получены аналогичные ответы.

Основные операторы

Существуют и менее распространенные логические функции.

У каждого из вышеуказанных операторов, кроме первых двух, имеются аргументы. Аргументами могут выступать, как конкретные числа или текст, так и ссылки, указывающие адрес ячеек с данными.

Функции ЕОШИБКА и ЕПУСТО

Функция ЕОШИБКА проверяет, не содержит ли определенная ячейка или диапазон ячеек ошибочные значения. Под ошибочными значениями понимаются следующие:

  • #Н/Д;
  • #ЗНАЧ;
  • #ЧИСЛО!;
  • #ДЕЛ/0!;
  • #ССЫЛКА!;
  • #ИМЯ?;
  • #ПУСТО!

В зависимости от того ошибочный аргумент или нет, оператор сообщает значение ИСТИНА или ЛОЖЬ. Синтаксис данной функции следующий: = ЕОШИБКА(значение) . В роли аргумента выступает исключительно ссылка на ячейку или на массив ячеек.

Оператор ЕПУСТО делает проверку ячейки на то, пустая ли она или содержит значения. Если ячейка пустая, функция сообщает значение ИСТИНА, если ячейка содержит данные – ЛОЖЬ. Синтаксис этого оператора имеет такой вид: =ЕПУСТО(значение) . Так же, как и в предыдущем случае, аргументом выступает ссылка на ячейку или массив.

Пример применения функций

Теперь давайте рассмотрим применение некоторых из вышеперечисленных функций на конкретном примере.

Имеем список работников предприятия с положенными им заработными платами. Но, кроме того, всем работникам положена премия. Обычная премия составляет 700 рублей. Но пенсионерам и женщинам положена повышенная премия в размере 1000 рублей. Исключение составляют работники, по различным причинам проработавшие в данном месяце менее 18 дней. Им в любом случае положена только обычная премия в размере 700 рублей.

Попробуем составить формулу. Итак, у нас существует два условия, при исполнении которых положена премия в 1000 рублей – это достижение пенсионного возраста или принадлежность работника к женскому полу. При этом, к пенсионерам отнесем всех тех, кто родился ранее 1957 года. В нашем случае для первой строчки таблицы формула примет такой вид: =ЕСЛИ(ИЛИ(C4<1957;D4="жен.");"1000";"700") . Но, не забываем, что обязательным условием получения повышенной премии является отработка 18 дней и более. Чтобы внедрить данное условие в нашу формулу, применим функцию НЕ: =ЕСЛИ(ИЛИ(C4<1957;D4="жен.")*(НЕ(E4<18));"1000";"700") .

Для того, чтобы скопировать данную функцию в ячейки столбца таблицы, где указана величина премии, становимся курсором в нижний правый угол ячейки, в которой уже имеется формула. Появляется маркер заполнения. Просто перетягиваем его вниз до конца таблицы.

Таким образом, мы получили таблицу с информацией о величине премии для каждого работника предприятия в отдельности.

Как видим, логические функции являются очень удобным инструментом для проведения расчетов в программе Microsoft Excel. Используя сложные функции, можно задавать несколько условий одновременно и получать выводимый результат в зависимости от того, выполнены эти условия или нет. Применение подобных формул способно автоматизировать целый ряд действий, что способствует экономии времени пользователя.

Практический пример использования логических функций

В примере ниже попробуем частично использовать описанные выше функции для решения задачи, приближенной к реальной ситуации с расчетом премии, зависящей от определенных условий.

В качестве исходных данных – таблица со сведениями о работниках, в которой указан их пол и возраст.

Нам необходимо произвести расчет премии. Ключевые условия, от которых зависит размер премии:

  • величина обычной премии, которую получат все сотрудники без исключения – 3 000 руб.;
  • сотрудницам женского пола положена повышенная премия – 7 000 руб.;
  • молодым сотрудникам (младше 1984 г. рождения) положена повышенная премия – 7 000 руб.;

Выполним необходимые расчеты, используя логические функции.

  1. Встаем в первую ячейку столбца, в которой хотим посчитать размеры премий и щелкаем кнопку “Вставить функцию” (слева от сроки формул).
  2. В открывшемся Мастере функций выбираем категорию “Логические”, затем в предложенном перечне операторов кликаем по строке “ЕСЛИ” и жмем OK.
  3. Теперь нам нужно задать аргументы функции. Так как у нас не одно, а два условия получения повышенной премии, причем нужно, чтобы выполнялось хотя бы одно из них, чтобы задать логическое выражение, воспользуемся функцией ИЛИ. Находясь в поле для ввода значения аргумента “Лог_выражение” кликаем в основной рабочей области книги на небольшую стрелку вниз, расположенную в левой верхней части окна программы, где обычно отображается адрес ячейки. В открывшемся списке функций выбираем оператор ИЛИ, если он представлен в перечне (или можно кликнуть на пункт “Другие функции” и выбрать его в новом окне Мастера функций, как мы изначально сделали для выбора оператора ЕСЛИ).
  4. Мы переключимся в окно аргументов функци ИЛИ. Здесь задаем наши условия получения премии в 7000 руб.:
    • год рождения позже 1984 года;
    • пол – женский;
  5. Теперь обращаем внимание на строку формул. Кликаем в ней на название первоначального оператора ЕСЛИ, чтобы переключиться в аргументы этой функции.
  6. Заполняем аргументы функции и щелкаем OK:
    • в значении “Истина” пишем цифру 7000;
    • в значении “Ложь” указываем цифру 3000;
  7. Результат работы логических операторов отобразится в первой ячейке столбца, которую мы выбрали. Как мы можем видеть, окончательный вид формулы выглядит следующим образом:
    =ЕСЛИ(ИЛИ(C2>1984;D2="жен.");7000;3000).
    Кстати, вместо использования Мастера функций можно было вручную составить и прописать данную формулу в требуемой ячейке.
  8. Чтобы рассчитать премию для всех сотрудников, воспользуемся Маркером заполнения. Наведем курсор на правый нижний угол ячейки с формулой. После того, как курсор примет форму черного крестика (это и есть Маркер заполнения), зажимаем левую кнопку мыши и протягиваем выделение вниз, до последней ячейки столбца.
  9. Все готово. Благодаря логическим операторам мы получили заполненные данные для столбца с премиями.

Логическая функция ИСКЛИЛИ в Excel

В Excel 2013 Microsoft представила функцию ИСКЛИЛИ, которая является логической функцией исключающего ИЛИ. Для тех, кто не знаком с понятием «Исключающего ИЛИ», сначала может быть немного сложно понять суть логической функции, но, надеюсь, приведенное ниже объяснение иллюстрируемое примерами формул поможет прояснить суть.

Синтаксис логической функции ИСКЛИЛИ идентичен синтаксису ИЛИ:

=ИСКЛИЛИ(логическое_значение1; [логическое_значение2];…)

В простейшей версии формулы ИСКЛИЛИ, содержащей только 2 логических оператора, логическая функция Excel ИСКЛИЛИ вернет ИСТИНУ, если любой из аргументов имеет значение ИСТИНА. Если оба аргумента ИСТИНА, либо оба ЛОЖЬ, ИСКЛИЛИ возвращает ЛОЖЬ. Рассмотрим примеры формул:

Формула

Результат

Описание

=ИСКЛИЛИ(1>0; 2<1)

ИСТИНА

Логическая функция возвращает ИСТИНА, потому что первый аргумент ИСТИНА, а второй аргумент ЛОЖЬ.

=ИСКЛИЛИ(1<0; 2<1)

ЛОЖЬ

Логическая функция возвращает ЛОЖЬ, потому что оба аргумента ЛОЖЬ.

=ИСКЛИЛИ(1>0; 2>1)

ЛОЖЬ

Логическая функция возвращает ЛОЖЬ, потому что оба аргумента ИСТИНА.

Когда добавляется больше логических операторов, функция ИСКЛИЛИ в Excel работает следующим образом:

  • ИСТИНА, если нечетное число аргументов оценивается как ИСТИНА;
  • ЛОЖЬ, если общее число ИСТИННЫХ утверждений четно, или если все операторы ЛОЖЬ.

Представленное ниже изображение наглядно это иллюстрирует:

Заключение

Логические операторы используются практически во всех сложных формулах, в которых значение в ячейке зависит от соблюдения одного или нескольких условий и позволяют строить гибкие конструкции, объединяя простые функции и расчеты в одной ячейке. Это дает возможность значительно сократить время на обработку данных и повысить эффективность работы, так как снимает большое количество промежуточных шагов в расчетах и вычислениях.

Источники

  • https://office-menu.ru/uroki-excel/13-uverennoe-ispolzovanie-excel/31-logicheskie-funktsii-excel
  • https://statanaliz.info/excel/funktsii-i-formuly/neskolko-uslovij-funktsii-esli-eslimn-excel/
  • https://nastroyvse.ru/programs/review/pravilno-zapisat-logicheskie-formuly-v-excel.html
  • http://composs.ru/logicheskie-funkcii-v-microsoft-excel/
  • https://lumpics.ru/logical-functions-in-excel/
  • https://MicroExcel.ru/logicheskie-funkczii/
  • https://naprimerax.org/posts/76/logicheskie-funktcii-v-excel

Отладка программы — один их самых сложных этапов разработки программного обеспечения, требующий глубокого знания:

специфики управления используемыми техническими средствами,

операционной системы,

среды и языка программирования,

реализуемых процессов,

природы и специфики различных ошибок,

методик отладки и соответствующих программных средств. 

Отладка — это процесс локализации и исправления ошибок, обнаруженных при тестировании программного обеспечения. Локализацией называют процесс определения оператора программы, выполнение которого вызвало нарушение нормального вычислительного процесса. Доя исправления ошибки необходимо определить ее причину, т. е. определить оператор или фрагмент, содержащие ошибку. Причины ошибок могут быть как очевидны, так и очень глубоко скрыты.

Вцелом сложность отладки обусловлена следующими причинами:

требует от программиста глубоких знаний специфики управления используемыми техническими средствами, операционной системы, среды и языка программирования, реализуемых процессов, природы и специфики различных ошибок, методик отладки и соответствующих программных средств;

психологически дискомфортна, так как необходимо искать собственные ошибки и, как правило, в условиях ограниченного времени;

возможно взаимовлияние ошибок в разных частях программы, например, за счет затирания области памяти одного модуля другим из-за ошибок адресации;

отсутствуют четко сформулированные методики отладки.

Всоответствии с этапом обработки, на котором проявляются ошибки, различают (рис. 10.1):


    синтаксические ошибки — ошибки, фиксируемые компилятором (транслятором, интерпретатором) при выполнении синтаксического и частично семантического анализа программы; ошибки компоновки — ошибки, обнаруженные компоновщиком (редактором связей) при объединении модулей программы;

    ошибки выполнения — ошибки, обнаруженные операционной системой, аппаратными средствами или пользователем при выполнении программы.

Синтаксические ошибки. Синтаксические ошибки относят к группе самых простых, так как синтаксис языка, как правило, строго формализован, и ошибки сопровождаются развернутым комментарием с указанием ее местоположения. Определение причин таких ошибок, как правило, труда не составляет, и даже при нечетком знании правил языка за несколько прогонов удается удалить все ошибки данного типа.

Следует иметь в виду, что чем лучше формализованы правила синтаксиса языка, тем больше ошибок из общего количества может обнаружить компилятор и, соответственно, меньше ошибок будет обнаруживаться на следующих этапах. В связи с этим говорят о языках программирования с защищенным синтаксисом и с незащищенным синтаксисом. К первым, безусловно, можно отнести Pascal, имеющий очень простой и четко определенный синтаксис, хорошо проверяемый при компиляции программы, ко вторым — Си со всеми его модификациями. Чего стоит хотя бы возможность выполнения присваивания в условном операторе в Си, например:

if (c = n) x = 0; /* в данном случае не проверятся равенство с и n, а выполняется присваивание с значения n, после чего результат операции сравнивается с нулем, если программист хотел выполнить не присваивание, а сравнение, то эта ошибка будет обнаружена только на этапе выполнения при получении результатов, отличающихся от ожидаемых */ 

Ошибки компоновки. Ошибки компоновки, как следует из названия, связаны с проблемами,

обнаруженными при разрешении внешних ссылок. Например, предусмотрено обращение к подпрограмме другого модуля, а при объединении модулей данная подпрограмма не найдена или не стыкуются списки параметров. В большинстве случаев ошибки такого рода также удается быстро локализовать и устранить.

    Ошибки выполнения. К самой непредсказуемой группе относятся ошибки выполнения. Прежде всего они могут иметь разную природу, и соответственно по-разному проявляться. Часть ошибок обнаруживается и документируется операционной системой. Выделяют четыре способа проявления таких ошибок:

• появление сообщения об ошибке, зафиксированной схемами контроля выполнения машинных команд, например, переполнении разрядной сетки, ситуации «деление на ноль», нарушении адресации и т. п.;

появление сообщения об ошибке, обнаруженной операционной системой, например, нарушении защиты памяти, попытке записи на устройства, защищенные от записи, отсутствии файла с заданным именем и т. п.;

«зависание» компьютера, как простое, когда удается завершить программу без перезагрузки операционной системы, так и «тяжелое», когда для продолжения работы необходима перезагрузка;

несовпадение полученных результатов с ожидаемыми.

Примечание. Отметим, что, если ошибки этапа выполнения обнаруживает пользователь, то в двух первых случаях, получив соответствующее сообщение, пользователь в зависимости от своего характера, степени необходимости и опыта работы за компьютером, либо попробует понять, что произошло, ища свою вину, либо обратится за помощью, либо постарается никогда больше не иметь дела с этим продуктом. При «зависании» компьютера пользователь может даже не сразу понять, что происходит что-то не то, хотя его печальный опыт и заставляет волноваться каждый раз, когда компьютер не выдает быстрой реакции на введенную команду, что также целесообразно иметь в виду. Также опасны могут быть ситуации, при которых пользователь получает неправильные результаты и использует их в своей работе.

Причины ошибок выполнения очень разнообразны, а потому и локализация может оказаться крайне сложной. Все возможные причины ошибок можно разделить на следующие группы:

неверное определение исходных данных,

логические ошибки,

накопление погрешностей результатов вычислений (рис. 10.2).

Н е в е р н о е о п р е д е л е н и е и с х о д н ы х д а н н ы х происходит, если возникают любые ошибки при выполнении операций ввода-вывода: ошибки передачи, ошибки преобразования, ошибки перезаписи и ошибки данных. Причем использование специальных технических средств и программирование с защитой от ошибок (см.§ 2.7) позволяет обнаружить и предотвратить только часть этих ошибок, о чем безусловно не следует забывать.

Л о г и ч е с к и е о ш и б к и имеют разную природу. Так они могут следовать из ошибок, допущенных при проектировании, например, при выборе методов, разработке алгоритмов или определении структуры классов, а могут быть непосредственно внесены при кодировании модуля.

Кпоследней группе относят:

ошибки некорректного использования переменных, например, неудачный выбор типов данных, использование переменных до их инициализации, использование индексов, выходящих за границы определения массивов, нарушения соответствия типов данных при использовании явного или неявного переопределения типа данных, расположенных в памяти при использовании нетипизированных переменных, открытых массивов, объединений, динамической памяти, адресной арифметики и т. п.;

ошибки вычислений, например, некорректные вычисления над неарифметическими переменными, некорректное использование целочисленной арифметики, некорректное преобразование типов данных в процессе вычислений, ошибки, связанные с незнанием приоритетов выполнения операций для арифметических и логических выражений, и т. п.;

ошибки межмодульного интерфейса, например, игнорирование системных соглашений, нарушение типов и последовательности при передачи параметров, несоблюдение единства единиц измерения формальных и фактических параметров, нарушение области действия локальных и глобальных переменных;

другие ошибки кодирования, например, неправильная реализация логики программы при кодировании, игнорирование особенностей или ограничений конкретного языка программирования.

На к о п л е н и е п о г р е ш н о с т е й результатов числовых вычислений возникает, например, при некорректном отбрасывании дробных цифр чисел, некорректном использовании приближенных методов вычислений, игнорировании ограничения разрядной сетки представления вещественных чисел в ЭВМ и т. п.

Все указанные выше причины возникновения ошибок следует иметь в виду в процессе отладки. Кроме того, сложность отладки увеличивается также вследствие влияния следующих факторов:

опосредованного проявления ошибок;

возможности взаимовлияния ошибок;

возможности получения внешне одинаковых проявлений разных ошибок;

отсутствия повторяемости проявлений некоторых ошибок от запуска к запуску – так называемые стохастические ошибки;

возможности устранения внешних проявлений ошибок в исследуемой ситуации при внесении некоторых изменений в программу, например, при включении в программу диагностических фрагментов может аннулироваться или измениться внешнее проявление ошибок;

написания отдельных частей программы разными программистами.

Методы отладки программного обеспечения

Отладка программы в любом случае предполагает обдумывание и логическое осмысление всей имеющейся информации об ошибке. Большинство ошибок можно обнаружить по косвенным признакам посредством тщательного анализа текстов программ и результатов тестирования без получения дополнительной информации. При этом используют различные методы:

ручного тестирования;

индукции;

дедукции;

обратного прослеживания.

Метод ручного тестирования. Это — самый простой и естественный способ данной группы. При обнаружении ошибки необходимо выполнить тестируемую программу вручную, используя тестовый набор, при работе с которым была обнаружена ошибка.

Метод очень эффективен, но не применим для больших программ, программ со сложными вычислениями и в тех случаях, когда ошибка связана с неверным представлением программиста о выполнении некоторых операций.

Данный метод часто используют как составную часть других методов отладки.

Метод индукции. Метод основан на тщательном анализе симптомов ошибки, которые могут проявляться как неверные результаты вычислений или как сообщение об ошибке. Если компьютер просто «зависает», то фрагмент проявления ошибки вычисляют, исходя из последних полученных результатов и действий пользователя. Полученную таким образом информацию организуют и тщательно изучают, просматривая соответствующий фрагмент программы. В результате этих действий выдвигают гипотезы об ошибках, каждую из которых проверяют. Если гипотеза верна, то детализируют информацию об ошибке, иначе — выдвигают другую гипотезу. Последовательность выполнения отладки методом индукции показана на рис. 10.3 в виде схемы алгоритма.

Самый ответственный этап — выявление симптомов ошибки. Организуя данные об ошибке, целесообразно записать все, что известно о ее проявлениях, причем фиксируют, как ситуации, в которых фрагмент с ошибкой выполняется нормально, так и ситуации, в которых ошибка проявляется. Если в результате изучения данных никаких гипотез не появляется, то необходима дополнительная информация об ошибке. Дополнительную информацию можно получить, например, в результате выполнения схожих тестов.

В процессе доказательства пытаются выяснить, все ли проявления ошибки объясняет данная гипотеза, если не все, то либо гипотеза не верна, либо ошибок несколько.

Метод дедукции. По методу дедукции вначале формируют множество причин, которые могли бы вызвать данное проявление ошибки. Затем анализируя причины, исключают те, которые противоречат имеющимся данным. Если все причины исключены, то следует выполнить дополнительное тестирование исследуемого фрагмента. В противном случае наиболее вероятную гипотезу пытаются доказать. Если гипотеза объясняет полученные признаки ошибки, то ошибка найдена, иначе — проверяют следующую причину (рис. 10.4).

Метод обратного прослеживания. Для небольших программ эффективно применение метода обратного прослеживания. Начинают с точки вывода неправильного результата. Для этой точки строится гипотеза о значениях основных переменных, которые могли бы привести к получению имеющегося результата. Далее, исходя из этой гипотезы, делают предложения о значениях переменных в предыдущей точке. Процесс продолжают, пока не обнаружат причину ошибки.

Ошибки в Excel возникают довольно часто. Вы, наверняка, замечали странные значения в ячейках, вместо ожидаемого результата, которые начинались со знака #. Это говорит о том, что формула возвращает ошибку. Чтобы избавиться от ошибки, Вы должны исправить ее причину, а они могут быть самыми разными.

Содержание

  1. Несоответствие открывающих и закрывающих скобок
  2. Ячейка заполнена знаками решетки
  3. Ошибка #ДЕЛ/0!
  4. Ошибка #Н/Д
  5. Ошибка #ИМЯ?
  6. Ошибка #ПУСТО!
  7. Ошибка #ЧИСЛО!
  8. Ошибка #ССЫЛКА!
  9. Ошибка #ЗНАЧ!

Несоответствие открывающих и закрывающих скобок

Самым распространенным примером возникновения ошибок в формулах Excel является несоответствие открывающих и закрывающих скобок. Когда пользователь вводит формулу, Excel автоматически проверяет ее синтаксис и не даст закончить ввод, пока в ней присутствует синтаксическая ошибка.

Ошибки в формулах Excel

Например, на рисунке выше мы намеренно пропустили закрывающую скобку при вводе формулы. Если нажать клавишу Enter, Excel выдаст следующее предупреждение:

Ошибки в формулах Excel

В некоторых случаях Excel предлагает свой вариант исправления ошибки. Вы можете либо согласиться с Excel, либо исправить формулу самостоятельно. В любом случае слепо полагаться на это исправление ни в коем случае нельзя. Например, на следующем рисунке Excel предложил нам неправильное решение.

Ошибки в формулах Excel

Ячейка заполнена знаками решетки

Бывают случаи, когда ячейка в Excel полностью заполнена знаками решетки. Это означает один из двух вариантов:

    1. Столбец недостаточно широк для отображения всего содержимого ячейки. Для решения проблемы достаточно увеличить ширину столбца, чтобы все данные отобразились…Ошибки в формулах Excel

      …или изменить числовой формат ячейки.

Ошибки в формулах Excel

  1. В ячейке содержится формула, которая возвращает некорректное значение даты или времени. Думаю, Вы знаете, что Excel не поддерживает даты до 1900 года. Поэтому, если результатом формулы оказывается такая дата, то Excel возвращает подобный результат.Ошибки в формулах Excel

В данном случае увеличение ширины столбца уже не поможет.

Ошибка #ДЕЛ/0!

Ошибка #ДЕЛ/0! возникает, когда в Excel происходит деление на ноль. Это может быть, как явное деление на ноль, так и деление на ячейку, которая содержит ноль или пуста.

Ошибки в формулах Excel

Ошибка #Н/Д

Ошибка #Н/Д возникает, когда для формулы или функции недоступно какое-то значение. Приведем несколько случаев возникновения ошибки #Н/Д:

  1. Функция поиска не находит соответствия. К примеру, функция ВПР при точном поиске вернет ошибку #Н/Д, если соответствий не найдено.Ошибки в формулах Excel
  2. Формула прямо или косвенно обращается к ячейке, в которой отображается значение #Н/Д.Ошибки в формулах Excel
  3. При работе с массивами в Excel, когда аргументы массива имеют меньший размер, чем результирующий массив. В этом случае в незадействованных ячейках итогового массива отобразятся значения #Н/Д.Например, на рисунке ниже видно, что результирующий массив C4:C11 больше, чем аргументы массива A4:A8 и B4:B8.

    Ошибки в формулах Excel

    Нажав комбинацию клавиш Ctrl+Shift+Enter, получим следующий результат:

    Ошибки в формулах Excel

Ошибка #ИМЯ?

Ошибка #ИМЯ? возникает, когда в формуле присутствует имя, которое Excel не понимает.

  1. Например, используется текст не заключенный в двойные кавычки:Ошибки в формулах Excel
  2. Функция ссылается на имя диапазона, которое не существует или написано с опечаткой:Ошибки в формулах Excel

В данном примере имя диапазон не определено.

  1. Адрес указан без разделяющего двоеточия:Ошибки в формулах Excel
  2. В имени функции допущена опечатка:Ошибки в формулах Excel

Ошибка #ПУСТО!

Ошибка #ПУСТО! возникает, когда задано пересечение двух диапазонов, не имеющих общих точек.

  1. Например, =А1:А10 C5:E5 – это формула, использующая оператор пересечения, которая должна вернуть значение ячейки, находящейся на пересечении двух диапазонов. Поскольку диапазоны не имеют точек пересечения, формула вернет #ПУСТО!.Ошибки в формулах Excel
  2. Также данная ошибка возникнет, если случайно опустить один из операторов в формуле. К примеру, формулу =А1*А2*А3 записать как =А1*А2 A3.Ошибки в формулах Excel

Ошибка #ЧИСЛО!

Ошибка #ЧИСЛО! возникает, когда проблема в формуле связана со значением.

  1. Например, задано отрицательное значение там, где должно быть положительное. Яркий пример – квадратный корень из отрицательного числа.Ошибки в формулах Excel
  2. К тому же, ошибка #ЧИСЛО! возникает, когда возвращается слишком большое или слишком малое значение. Например, формула =1000^1000 вернет как раз эту ошибку.Ошибки в формулах Excel

Не забывайте, что Excel поддерживает числовые величины от -1Е-307 до 1Е+307.

  1. Еще одним случаем возникновения ошибки #ЧИСЛО! является употребление функции, которая при вычислении использует метод итераций и не может вычислить результат. Ярким примером таких функций в Excel являются СТАВКА и ВСД.

Ошибка #ССЫЛКА!

Ошибка #ССЫЛКА! возникает в Excel, когда формула ссылается на ячейку, которая не существует или удалена.

  1. Например, на рисунке ниже представлена формула, которая суммирует значения двух ячеек.Ошибки в формулах Excel

    Если удалить столбец B, формула вернет ошибку #ССЫЛКА!.

    Ошибки в формулах Excel

  2. Еще пример. Формула в ячейке B2 ссылается на ячейку B1, т.е. на ячейку, расположенную выше на 1 строку.Ошибки в формулах Excel

    Если мы скопируем данную формулу в любую ячейку 1-й строки (например, ячейку D1), формула вернет ошибку #ССЫЛКА!, т.к. в ней будет присутствовать ссылка на несуществующую ячейку.

    Ошибки в формулах Excel

Ошибка #ЗНАЧ!

Ошибка #ЗНАЧ! одна из самых распространенных ошибок, встречающихся в Excel. Она возникает, когда значение одного из аргументов формулы или функции содержит недопустимые значения. Самые распространенные случаи возникновения ошибки #ЗНАЧ!:

  1. Формула пытается применить стандартные математические операторы к тексту.Ошибки в формулах Excel
  2. В качестве аргументов функции используются данные несоответствующего типа. К примеру, номер столбца в функции ВПР задан числом меньше 1.Ошибки в формулах Excel
  3. Аргумент функции должен иметь единственное значение, а вместо этого ему присваивают целый диапазон. На рисунке ниже в качестве искомого значения функции ВПР используется диапазон A6:A8.Ошибки в формулах Excel

Вот и все! Мы разобрали типичные ситуации возникновения ошибок в Excel. Зная причину ошибки, гораздо проще исправить ее. Успехов Вам в изучении Excel!

Оцените качество статьи. Нам важно ваше мнение:

Возможно, вам также будет интересно:

  • Возникновение ошибки код 43 видеокарта
  • Возникновение может привести к ошибкам
  • Возникло следующее неустранимое предупреждение 70 внутреннее состояние ошибки 105
  • Возникло следующее неустранимое предупреждение 51 внутреннее состояние ошибки 805
  • Возникло следующее неустранимое предупреждение 48 внутреннее состояние ошибки 552

  • Понравилась статья? Поделить с друзьями:
    0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии