
Зимин / Excel практикум / EXCEL-4
.DOCРасчет штрафа ГОД ЗАМЕНЯЕМ НА ТЕКУЩИЙ
Первым делом создайте такую табличку (найдите в тетради, как можно писать несколько строк в одной ячейке):
|
A |
B |
C |
D |
E |
F |
G |
H |
I |
J |
K |
L |
M |
N |
1 |
Платель-щик |
Сумма по счету |
Дата оплаты |
Дата прихода |
Пометка неоплаченных |
Пометка неоплаченных, превышающих 1 000 р. |
Штраф |
Оплаченные во время |
Оплаченные не в срок |
Не оплаченные |
||||
2 |
|
|
|
|
|
|
|
Сумма |
Сумма |
Штраф |
Итого |
Сумма |
Штраф |
Итого |
3 |
Петров |
1 000 |
10.02.06 |
5.02.06 |
|
|
|
|
|
|
|
|
|
|
4 |
Сидоров |
500 |
15.03.06 |
22.03.06 |
|
|
|
|
|
|
|
|
|
|
5 |
Николаев |
1 200 |
30.05.06 |
|
|
|
|
|
|
|
|
|
|
|
6 |
Иванов |
850 |
1.04.06 |
|
|
|
|
|
|
|
|
|
|
|
7 |
ИТОГО: |
|
|
|
|
|
|
|
|
|
|
|
|
|
Дата оплаты – это когда плательщик должен был заплатить, Дата прихода – это когда действительно заплатил. Дата прихода может отсутствовать – это значит, что плательщик еще не заплатил.
1)
В столбце E против тех,
кто еще не оплатил счет, должна появиться
пометка – например, три восклицательных
знака. Так как здесь появляется условие
(ЕСЛИ в дате прихода пусто, ТО поставить
три восклицательных знака, ИНАЧЕ
поставить пробел), нужно использовать
функцию ЕСЛИ. Помещаем курсор в ячейку
E3 и с помощью Мастера
функций добываем функцию ЕСЛИ. На схеме
вы видите три прямоугольничка – они
соответствуют трем окошкам функции
ЕСЛИ. В первом окошке должно стоять
условие, во втором – то, что
будет результатом формулы, если
условие выполняется (стрелочка
«ДА»), в третьем – то, что будет
результатом формулы, если условие
не выполняется (стрелочка «НЕТ»).
Итак, сейчас мы находимся в первом окошке. Это условие (пусто ли в ячейке с датой прихода) можно записать с помощью функции ЕПУСТО. Где на экране вы видите махонького такого Мастера функций, соответствующего именно тому окошечку, где мы находимся? С его именно помощью добудьте функцию ЕПУСТО. Она должна проверять состояние ячейки с датой прихода того гражданина, в строке которого мы стоим (а это Петров). Щелкните эту ячейку. Теперь можно нажимать Ok или Закончить. Вы должны вернуться в функцию ЕСЛИ. Переходите во второе окошечко. Там надо напечатать !!!. Находясь же в третьем окошечке, нажмите только один пробел. Заканчивайте и, не смущаясь пустотой в ячейке, размножайте на всех плательщиков. Должны появиться пометки у Николаева и Иванова. Пощелкайте по ячейкам столбца E, посмотрите на адреса в формулах. Понятно?
2) В столбце F должны появиться три восклицательных знака против тех граждан, кто должен заплатить более 1 000 р, но еще не оплатил (видимо, чтобы держать их на особом контроле). Действуем аналогично пункту 1. Помещаем курсор в ячейку F3, вызываем Мастера функций, и как в предыдущий раз с помощью маленького Мастера, находящегося около первого окошечка, вызываем функцию ЕПУСТО, которая проверяет отсутствие даты прихода для Петрова. Теперь переходим во второе. Вот тут возникает отличие – видите, опять условие и две веточки ДА и НЕТ! Это означает, что во втором окошечке мы должны вызвать новую функцию ЕСЛИ. Добудьте ее из Мастера функций около второго окошечка.
И вот у нас опять три пустых окошечка! В первом помещаем условие: содержимое ячейки с суммой (щелкните по ней) сравниваем с 1000 (знак > находится на букве Ю по-английски), во втором окошечке – три восклицательных знака, в третьем – пробел. После того, как вы нажмете Ok или Закончить, вы вернетесь в первую функцию ЕСЛИ.
А здесь нам осталось заполнить еще одно окошечко – третье. Поставьте в нем так же пробел. Заканчивайте и размножайте. Пометка должна появиться только у Николаева.
3) Вычислим штраф: полпроцента от суммы по счету за каждый просроченный день. Полпроцента – это 0,005, сумма по счету находится в столбце B, а вот как же выяснить, сколько дней просрочено? Ведь нам нужно создать формулу, которая будет охватывать все возможные случаи. У Петрова – ни одного, он заплатил даже раньше, чем нужно, у Сидорова оплачено и просрочено на 7 дней, Николаев еще ничего не оплатил, но и не обязан – его срок оплаты еще не наступил, а у Иванова количество просроченных дней переменное – сегодня одно, а завтра на день больше. Для расчета количества просроченных дней можно воспользоваться вот такой схемой:
В
ячейке G3 формулу начинаем
со знака =, затем умножаем сумму по счету
для Петрова на полпроцента, затем ставим
* и из Мастера функций добываем функцию
ЕСЛИ. Что помещать в первом окошке,
вы уже знаете, так же, надеюсь, догадываетесь,
что во втором окошке нужно вызвать
вторую функцию ЕСЛИ.
Для формулирования условия в первом окошке второй ЕСЛИ (сегодняшняя дата > дата оплаты) нам нужна сегодняшняя дата. Воспользуемся вложенным Мастером функций, чтобы вызвать функцию СЕГОДНЯ, с которой потом сравним дату оплаты. Для заполнения второго окошка второй ЕСЛИ так же вызываем функцию СЕГОДНЯ, из которой вычитаем дату оплаты. В третье окошко второй ЕСЛИ помещаем что? Конечно, ноль. Когда вы закончите работу со второй ЕСЛИ, вы вернетесь в первую ЕСЛИ.
В первой ЕСЛИ у нас еще осталось незаполненным третье окошко. Да, предчувствия ее не обманули! Там должна быть ТРЕТЬЯ функция ЕСЛИ ! Вызывайте ее из Мастера функций, стоящего около третьего окошка и заполняйте ее окошечки. Я думаю, вы уже поняли как.
4)
Заполняем столбец Оплаченные вовремя.
Здесь должны появиться суммы тех счетов,
которые оплачены, причем оплачены
вовремя. Если же счет не оплачен или
оплачен не вовремя – должен появиться
ноль. Условие у функции ЕСЛИ конструируется
из двух, объединенных функцией И.
Поэтому, находясь в первом окошечке
функции ЕСЛИ вызываем функцию И.
Здесь нам надо заполнить только ДВА окошечка, потому что у нас только два условия. В первом окошечке функции И надо записать условие: дата прихода присутствует. А мы до сих пор формулировали обратное условие – дата прихода отсутствует (в дате прихода пусто). Но у нас есть функция, которая переворачивает условие наоборот – это функция НЕ. Поэтому сначала вызываем ее, и только внутри функции НЕ вызываем функцию ЕПУСТО. Вы еще не забыли, где мы проверяем на НЕ ПУСТО? Да, точно, в дате прихода. Щелкните в ячейку с датой прихода для Петрова и возвращайтесь сначала из функции ЕПУСТО в функцию НЕ, потом из функции НЕ в функцию И.
Теперь заполняем второе окошко функции И. Понятно как: штраф гражданина Петрова сравниваем с нулем. Теперь можно возвращаться из функции И в функцию ЕСЛИ.
Находясь во втором окошке функции ЕСЛИ щелкаем по сумме Петрова, а в третьем – ставим нуль. Вот.
5). Столбец Оплаченные не вовремя | Сумма по счету заполняется по аналогии с предыдущим – здесь должны появиться суммы тех счетов, которые уже оплачены (т.е. в дате прихода НЕ ПУСТО), но просрочены (т.е. штраф БОЛЬШЕ нуля). Столбец Оплаченные не вовремя | Штраф – те же условия, только появиться вместо суммы по счету должен ШТРАФ.
Итого = Сумма по счету + Штраф (для оплаченных не вовремя).
6). Столбец Не оплаченные | Сумма по счету – здесь должны появиться суммы тех счетов, которые еще не оплачены (т.е. в дате прихода ПУСТО), но уже просрочены (т.е. штраф больше нуля). Столбец Не оплаченные | Штраф – те же условия, только появиться должен ШТРАФ, а не сумма по счету.
Итого = Сумма по счету + Штраф (для неоплаченных).
7). Теперь посчитаем ИТОГО, начиная со столбца H, с Оплаченные вовремя. Поместите курсор под данные в столбце H и воспользуйтесь Автосуммированием (кнопка с ), размножьте вправо до конца таблицы.
Сохраните файл в своем рабочем каталоге под названием shtraf