Требуется формула таблицы MS Works
Я создаю MS Works - Версия 8.5 - Электронная таблица, в которую вводятся Дата месяца, Месяц и Год. Год рассчитывается как не високосный или високосный год в соответствии с формулой, и под соответствующим заголовком появляется слово "ДА" или "НЕТ".
Заголовки: дата месяца - D3, месяц - E3, год - F3, не високосный год - H3 и високосный год - I3
Данные вводятся в D4, E4, F4, и слово "ДА" или слово "НЕТ" появляется под соответствующим заголовком в Н4 и I4.
Месяцы с января по декабрь перечислены в B11-B22.
В столбце А рядом с каждым месяцем я хочу показать сообщение, сообщающее об ошибке в случае ввода неправильной даты месяца - например, 32 для января, 31 для апреля и т. Д.
Независимо от того, является ли год не високосным или високосным, не имеет значения, и слово "ДА" или слово "НЕТ" не входят в уравнение, поэтому следующие формулы дают желаемый результат.
=IF(AND(D4>31,E4="JANUARY"),"31 DAYS","")
=IF(AND(D4>31,E4="APRIL"),"30 DAYS","")
Февраль, однако, который может иметь либо 28 дней, либо 29 дней, и, поскольку каждая ячейка может содержать только одну формулу, представляет другую ситуацию. Формула должна быть комбинацией:
=IF(AND(D4>28,E4="FEBRUARY",H4="YES"),"28 DAYS","")
а также
=IF(AND(D4>29,E4="FEBRUARY",I4="YES"),"29 DAYS","")
Любая помощь приветствуется. Спасибо
1 ответ
Я не могу попробовать это в Works, но в Excel работает следующее - посмотрите, можете ли вы вкладывать ifs следующим образом:=IF(E4="FEBRUARY", IF(H4="YES", IF(D4>28,"28 DAYS",""), IF(D4>29,"29 DAYS","")),"")
Я упростил это, только взглянув на H4, предполагая, что если H4 не YES, то это должен быть високосный год.
Кстати, это домашнее задание?
РЕДАКТИРОВАТЬ: FWIW вот еще один способ сделать это с помощью всего трех формул, и нет необходимости перечислять месяцы или использовать свой собственный расчет для високосных лет. Опять же, я попробовал это в Excel, я не могу попробовать это в Works:
A. Рассчитать номер месяца из названия месяца в A6
с этой формулой. Обратите внимание, что месяцы в первом разделе {} должны быть в алфавитном порядке, а номера месяцев во втором разделе {} должны быть в соответствующем порядке:
=LOOKUP(E4,{"April", "August", "December", "February", "January", "July", "June", "March", "May", "November"," October", "September"},{4,8,12,2,1,7,6,3,5,11,10,9})
Предостережение: это не даст хороших результатов, если не будет действительного месяца в E4
,
Б. Рассчитайте количество дней с начала этого месяца до начала следующего месяца в B6
:
=DATE(F4+TRUNC((A6+1)/12),MOD(A6+1,12),1)-DATE(F4,A6,1)
Это составляет прыжки с декабря по январь в двух местах:
- Год: Добавьте единицу к году, если месяц +1 (A6+1) больше 12, используя формулу TRUNC. Если рассчитанное значение меньше единицы (например, 12/12=1), оно усекает его до нуля, поэтому вы находитесь в том же году.
- Месяц: если A6 + 1 больше 12, начните с месяца 1. Функция MOD возвращает остаток после деления на 12, поэтому 13 становится 1. Вы также можете использовать функцию IF, но она более компактна.
C. Проверьте количество дней в C6
:
=IF(D4>B6,B6&" DAYS","")