Расчет суммы премии. Скрытие столбцов.
На данном этапе расчет производится с использованием логических функций ЕСЛИ. Первая формула в ячейке АА2 (рис. 5.25) создается по принципу: если служащий проработал менее года (значение ячейки Z2 сравнивается со значением ячейки U4), то премия равна произведению значения оклада, указанного в ячейке Е2, на коэффициент, внесенный в ячейку V4. Таким образом, в ячейке АА2 используется формула, приведенная ниже:
=
ЕСЛИ($Z2
<
$U$
4
; $E2
*
$V$
4
; AB2)
Так как коэффициент в ячейке V4 отсутствует, то есть равен нулю, то и размер премии равен нулю.
Аналогичные формулы введены в ячейки АВ2, АС2 и AD2:
=
ЕСЛИ($Z2
<
$U$
5
; $E2
*
$V$
5
; AC2)
=
ЕСЛИ($Z2
<
$U$
6
; $E2
*
$V$
6
; AD2)
=
ЕСЛИ($Z2
<
$U$
7
; $E2
*
$V$
7
; AE2)
Но формула в ячейке АЕ2 несколько от них отличается:
=
ЕСЛИ($Z2
>
=
$U$
8
; $E2
*
$V$
8
;
0
)
Если количество проработанных лет больше либо равно количеству лет, указанному в ячейке U8, то размер оклада умножается на коэффициент, указанный в ячейке V8.
Рис. 5.25. Формулы для расчета суммы премии в зависимости от стажа работы
Вложение формул
Выполним операцию вложения формул из ячеек Х2 и Y2 в формулу, которая находится в ячейке Z2:
=
ОТБР(($V$
2
-
K2)
/
365.25
)
Процесс вложения формул с функциями ЕСЛИ начнем с ячейки АЕ2 – мы вкладываем ее в ячейку AD2, а из ячейки AD2 – в ячейку АС2 и т. д. В ячейку АА2 введем формулу:
=
ЕСЛИ($Z2
<
$U$
4
; $E2
*
$V$
4
; ЕСЛИ($Z2
<
$U$
5
; $E2
*
$V$
5
; ЕСЛИ($Z2
<
$U$
6
; $E2
*
$V$
6
; ЕСЛИ($Z2
<
$U$
7
; $E2
*
$V$
7
; ЕСЛИ($Z2
>
=
$U$
8
; $E2
*
$V$
8
;
0
)))))
Формулу из ячейки Z2 вложим вместо ссылок на эту ячейку в формулу ячейки АА2:
=
ЕСЛИ(ОТБР(($V$
2
-
K2)
/
365.25
)
<
$U$
4
; $E2
*
$V$
4
; ЕСЛИ(ОТБР(($VS2
-
K2)
/
365.25
)
<
$U$
5
; $E2
*
$V$
5
; ЕСЛИ(ОТКР(($V$
2
-
K2)
/
365.25
)
<
$U$
6
; $E2
*
$V$
6
; ЕСЛИ(ОТБР(($V$
2
-
K2)
/
365.25
)
<
$U$
7
; $E2
*
$V$
7
; ЕСЛИ(ОТБР(($V$
2
-
K2)
/
365.25
)
>
=
$U$
8
; $E2
*
$V$
8
;
0
)))))
Теперь в расчетах участвуют только формулы, расположенные в ячейках S2 и АА2. В ячейке AF2 создадим формулу, основанную на логической функции ЕСЛИ:
=
ЕСЛИ(S2; AA2;
"Ошибка!"
)
Данная формула определяет, какое логическое значение находится в ячейке S2. Если это значение ИСТИНА, формула возвращает сумму премии. Если значение ЛОЖЬ, то возвращается сообщение Ошибка!.
Обратите внимание, что третьим аргументом формулы является текст. Это означает, что в функцию ЕСЛИ можно вводить любой текст (в частности, разного рода сообщения).
В формулу из ячейки AF2 вместо ссылок на адреса ячеек мы введем находящиеся в них формулы. В результате получим такую формулу:
=
ЕСЛИ(И(ЕПУСТО(L2); ЕСЛИ(D2
=
G2; ИСТИНА; ЛОЖЬ); ЕСЛИ(Н
2
=
ЛЕВСИМВ(С
2
; НАЙТИ(
" "
; С
2
)
-
1
); ИСТИНА; ЛОЖЬ)); ЕСЛИ(ОТБР(($V$
2
-
K2)
/
365.25
)
<
$U$
4
; $E2
*
$V$
4
; ЕСЛИ(ОТБР(($V$
2
-
K2)
/
365.25
)
<
$U$
5
; $E2
*
$V$
5
; ЕСЛИ(ОТБР(($V$
2
-
K2)
/
365.25
)
<
$U$
6
; $E2
*
$V$
6
; ЕСЛИ(ОТБР(($V$
2
-
K2)
/
365.25
)
<
$U$
7
; $E2
*
$V$
7
; ЕСЛИ(ОТБР(($V$
2
-
K2)
/
365.25
)
>
=
$U$
8
; $E2
*
$V$
8
;
0
)))))
/
"Ошибка!"
)