Я предполагаю, что вы говорите об одном из нескольких значений даты, которые Word предлагает в полях. Я также предполагаю, что вы вставляете поля через ленту / графический интерфейс и знаете, как это сделать. ОК, когда вы находитесь в окне настроек «Поле» и выбрали желаемую дату («Дата создания», (текущая) Дата, «Дата печати» или «Дата сохранения»), нажмите «Коды полей». Появится панель «Расширенные свойства поля» с текстовым полем «Коды полей:», в котором предварительно указано название поля, выбранного вами слева (которое представляет собой просто отображаемое имя в заглавных буквах; например, «CREATEDATE», «ДАТА» и т. Д.)
Вставьте \@ "d'th day of' MMMM, yyyy"
после этого имени поля; например,
Нажмите «ОК».
О, я также предполагаю, что вы хотите, чтобы месяц был прописан. Если вы хотите использовать только трехбуквенное сокращение (например, «Dec»), используйте MMM
вместо MMMM
.
К сожалению, вы задаете не тот вопрос. Да, этот вопрос был задан 5 декабря 2017 года, а днем ранее был 4-й. Но предыдущие три дня были 1, 2 и 3 ( не 1, 2 и 3). 21-е, 22-е, 23-е и 31-е также являются исключениями из «-го» правила (но, наоборот, 11-е, 12-е и 13-е не являются). Эта последовательность полей даст правильные порядковые номера для английского языка:
⑴ { set the_date { date } } ⑵ { Set day { the_date \@ “d” } } ⑶ { Set dec { = int(day / 10) } } ⑷ { Set d10 { =mod(day,10) } } ⑸ { Set suffix { If dec = 1 “th” { If d10 = 1 “st” { If d10 = 2 “nd” { If d10 = 3 “rd” “th” } } } } } ⑹ { Set format { Quote “d'” { suffix } “ day of' MMMM, yyyy” } } ⑺ { The_Date \@ { format } }
Номера строк приведены только для иллюстрации / изложения и не являются частью документа / кода. Кажется, что это без учета регистра (за исключением формата даты, где m
минуты и M
месяц). И «прямые кавычки» ( ) и «фигурные кавычки» ( ) кажутся взаимозаменяемыми.
- Присвойте дату переменной (технически, «закладка») с именем
the_date
. Измените последнее слово наcreatedate
,printdate
или,savedate
если это то, что вы хотите. - Получить номер дня
the_date
(например, «5 декабря» → 5) и присвоить его переменнойday
. - Получите десятичную цифру
day
(например, 5 → 0, 17 → 1, 23 → 2) и назначьте ее переменнойdec
. - Получите одну цифру
day
(например, 5 → 5, 17 → 7, 23 → 3) и назначьте ее переменнойd10
. - Определите соответствующий порядковый суффикс для
day
. Еслиdec
1, тоday
между 10 и 19, а суффикс «th». Еслиd10
это 1, 2 или 3, суффикс будет «st», «nd» или «rd» соответственно. Для всех остальных значений суффикс «th». Затем присвойте его переменнойsuffix
. - Создайте строку формата, подобную той, которую я использовал в первой части ответа. Объедините
d'
, суффикс (suffix
) из предыдущего шага иday of' MMMM, yyyy
. Это использует трюк (используяquote
поле), который я изучил в сообществе Microsoft ; Я не до конца понимаю это. - Это в основном повторение первой части ответа, но отображение в
the_date
соответствии с форматомformat
.
Чтобы использовать это, скопируйте следующее и вставьте его в документ Word:
set the_date date Set day the_date \@ "d" Set dec = int(day / 10) Set d10 =mod(day,10) Set suffix If dec = 1 “th” If d10 = 1 “st” If d10 = 2 “nd” If d10 = 3 “rd” “th” Set format Quote “d'” suffix “ day of' MMMM, yyyy” The_Date \@ format
(В приведенном выше случае заглавные буквы и интервалы (например, day / 10
против day,10
) являются произвольными / случайными (кроме format
строки).)
- На первой линии.
- Выберите
date
(или тотcreatedate
, который вы используете) и нажмите Ctrl+ F9. Он изменится и может иметь серый фон. Это то же самое преобразование будет происходить каждый раз, когда вы нажимаете +, в конечном итоге выглядело как первый блок кода (выше). Не вводите фигурные скобки!{ date }
CtrlF9 - Далее выберите всю строку и нажмите Ctrl+ F9.
- Выберите
- На второй линии.
- Выберите
the_date \@ “d”
и нажмите Ctrl+ F9. - Затем выберите всю строку и нажмите Ctrl+ F9.
- Выберите
- На третьей строчке.
- Выберите
= int(day / 10)
и нажмите Ctrl+ F9. - Затем выберите всю строку и нажмите Ctrl+ F9.
- Выберите
- На четвертой строчке.
- Выберите
=mod(day,10)
и нажмите Ctrl+ F9. - Затем выберите всю строку и нажмите Ctrl+ F9.
- Выберите
- На пятой строчке.
- Выберите
If d10 = 3 “rd” “th”
(в конце строки) и нажмите Ctrl+ F9. - Затем выберите
If d10 = 2 “nd” { If d10 = 3 “rd” “th” }
и нажмите Ctrl+ F9. - Затем выберите
If d10 = 1 “st” { If d10 = 2 “nd” { If d10 = 3 “rd” “th” } }
и нажмите Ctrl+ F9. - Затем выберите
If dec = 1 “th” { If d10 = 1 “st” { If d10 = 2 “nd” { If d10 = 3 “rd” “th” } } }
и нажмите Ctrl+ F9. - Затем выберите всю строку и нажмите Ctrl+ F9.
- Выберите
- На шестой строчке.
- Выбрать
suffix
и нажмите Ctrl+ F9. - Затем выберите
Quote “d'” { suffix } “ day of' MMMM, yyyy”
(т.е. изQuote
до конца строки) и нажмите Ctrl+ F9. - Затем выделите всю строку и нажмите Ctrl+F9.
- Выбрать
- На седьмой строчке.
- Выберите
format
и нажмитеCtrl +F9. - Затем выберите всю строку и нажмите Ctrl+ F9.
- Выберите
Обратите внимание, что строка 7 является единственной, которая на самом деле производит любой текст; первые шесть настроены и могут быть перемещены где-то как начало документа. Возможно, вы захотите удалить разрывы абзаца между полями, чтобы они не занимали много места по вертикали. Затем выберите все поля (или весь документ, например, с помощью Ctrl+ A) и нажмите F9( не Ctrl + F9). Поля (кроме последнего) могут исчезнуть. Если это так, это нормально, и все готово. Если они не исчезают, нажмите Shift+ F9 (опять же, не Ctrl +F9 ), и это должно сделать это.
PS Я проверил это на Word 2013, и вот откуда скриншот.