Я пытался, но не смог найти в полях Word эквивалент способа Excel вычесть дневное время из другого (скажем, 18.05.1983 с сегодняшнего дня 21.03.2013), что легко в Excel с дневного времени ( 01.01.1900 в Excel 2013) было выбрано в качестве начала и каждый второй день, так как рассчитывается по этой ссылке, показанные данные являются лишь способом представления этого результата (полная дата, месяц в цифрах или его полное название, или даже простое число Excel), которое можно переключать, щелкая правой кнопкой мыши по ячейке и выбирая формат ячейки категории (поскольку 01.01.1900 равно 1, затем 18.05.1983 - 30454 (... а также 00 01.01.1900 - 0!)).
Чтобы ответить на первоначальный вопрос, я предлагаю написать:
{= {DATE \@ "YYYY"} - my_year - 1*{=OR({={DATE \@ "MM"} < my_month};{=AND({={DATE \@ "MM"} = my_month};{={ DATE \@ "dd"} < my_day})})} \* MERGEFORMAT}
с учетом:
- , что фигурные скобки {} являются символами, характерными для Word (не обычные «буквы»), и их нужно вставить, нажав CTRL + F9.
- 'my_year', 'my_month' (дважды) и 'my_day': должны быть числами
- это письмо довольно короткое и предлагает только 4 изменения (к сожалению, месяц дважды), которые помогут предотвратить ошибки
- для начинающих это письмо говорит: сегодняшний год минус my_year, и вычтите один, если либо значение сегодняшнего месяца меньше, чем my_month, либо оба значения равны, а значение сегодняшнего дня меньше, чем my_day, поэтому мы не добавили один год в избытке.
Параметр MERGEFORMAT полезен для сохранения правильного формата.
Также для тех, кто не привык работать с полями Word:
- щелкнув правой кнопкой мыши текст в фигурных скобках {} и выбрав «Переключить коды полей», переключается на сам код (текст внутри) или на результат вычисления этого кода, но это может быть устаревшим (может быть предыдущим результатом и код был изменен).
- чтобы убедиться, что результат обновлен, щелкните правой кнопкой мыши и выберите «Обновить поле».
- и чтобы убедиться, что вы открываете каждое поле внутри мастер-поля, выберите все поле (лучше выбрать всю строку, содержащую его), щелкните правой кнопкой мыши и выберите «Переключить коды полей» (в противном случае некоторые поля имеют плохую кодировку или что может возвращать пустое выражение, может не быть виден и может повлиять на результат просмотра позже, когда он не нужен).
Это было бы для 18.05.1983 (я изменил 1 января, то есть с 01.01 по 18, чтобы избежать путаницы):
{= {DATE \@ "YYYY"} - 1983 - 1*{=OR({={DATE \@ "MM"} < 05};{=AND({={DATE \@ "MM"} = 05};{={ DATE \@ "dd"} < 18})})} \* MERGEFORMAT}