Word включает встроенный нумерованный список, который можно использовать для быстрого создания списков. Это отлично подходит для списков, расположенных в порядке возрастания (от 1 до 10), но не так хорошо для списков, которые вам нужны в порядке убывания (от 10 до 1).

Если вам нужны обратные списки, в Word нет автоматической функции, позволяющей создавать их. Один из способов обойти это — просто создать свои собственные номера списков и расположить их в желаемом порядке. Проблема в том, что процесс требует больших усилий вручную. Кроме того, функция Word с обычным нумерованным списком может разрушить ваш список с обратным порядком, если вы нажмете Enter в конце существующего элемента списка.

Другой способ справиться с ситуацией — предварять каждый элемент в вашем списке полем SEQ, чтобы сгенерировать номер для элемента списка. Когда вы закончите с элементами списка, вы можете обновить поля и отсортировать абзацы в порядке убывания. Очевидным недостатком этого подхода является то, что вам нужно вводить исходный список в обратном порядке, поскольку окончательная сортировка сделает упорядочение за вас. Таким образом, если у вас есть 10 элементов, вы должны сначала ввести номер 10, затем номер 9 и так далее. Когда вы выполняете сортировку, порядок элементов будет обратным, и каждый элемент окажется в своем окончательном порядке.

Другим недостатком этого является то, что добавление элементов в список становится громоздким, и если вы обновите поля в своем документе, числа будут полностью отброшены. Таким образом, необходимо найти более удовлетворительный подход.

Один из способов — изменить поле SEQ так, чтобы оно более точно отображало предполагаемый порядок абзацев. Использование составного поля для номера списка может сделать это следующим образом:

{=NP — {SEQ RevList}}

В этом случае символы NP необходимо заменить на номер, на единицу превышающий количество элементов в вашем окончательном списке. Таким образом, если ваш список состоит из 25 элементов, то NP будет 26. Поле SEQ используется для генерации возрастания чисел, вычитаемых из NP, чтобы дать окончательную нумерацию в обратном порядке.

Пока вы знаете количество абзацев (элементов) в вашем списке и не забываете помещать поле в начало каждого абзаца, вы в отличном состоянии. Если вы забудете один из них, ваш список может быть отброшен. Чтобы решить эту проблему, может пригодиться макрос. Следующие макросы (RevList и DoList) помогут.

Sub RevList()

Dim ShowFlag As Boolean     Dim Numparas As Integer     Dim Counter As Integer

Numparas = Selection.Paragraphs.Count     Selection.MoveLeft Unit:=wdCharacter, Count:=1     ShowFlag = ActiveWindow.View.ShowFieldCodes     ActiveWindow.View.ShowFieldCodes = True     DoList Numparas     Counter = 1     While Counter < Numparas         Selection.Move Unit:=wdParagraph, Count:=1         DoList Numparas         Counter = Counter + 1     Wend     ActiveWindow.View.ShowFieldCodes = ShowFlag     ActiveDocument.Select     ActiveDocument.Fields.Update End Sub
Private Sub DoList(Cnt As Integer)

Selection.Extend     Selection.MoveRight Unit:=wdCharacter, Count:=1     If InStr(Selection.Text, "SEQ") > 0 Then         Selection.MoveRight Unit:=wdCharacter, Count:=2         Selection.Delete Unit:=wdCharacter, Count:=1     Else         Selection.Collapse Direction:=wdCollapseStart     End If     Selection.Fields.Add Range:=Selection.Range, Type:=wdFieldEmpty, _         PreserveFormatting:=False     Selection.TypeText Text:="=" & Cnt + 1 & "-"

Selection.Fields.Add Range:=Selection.Range, Type:=wdFieldEmpty, _         PreserveFormatting:=False     Selection.TypeText Text:="SEQ RevList"

With Selection.ParagraphFormat         .LeftIndent = InchesToPoints(0.5)

.FirstLineIndent = InchesToPoints(-0.5)

End With     Selection.MoveRight Unit:=wdCharacter, Count:=4     Selection.InsertAfter "." & vbTab End Sub

Чтобы использовать макросы, просто выберите абзацы, которые будут включены в список, затем запустите RevList, который, в свою очередь, использует DoList. Соответствующие поля помещаются в начало каждого абзаца (удаляются все, что уже есть), и к абзацам применяется висячий отступ.

Если вы хотите изменить способ создания выступа, просто измените строки в макросе DoList, в которых установлены свойства LeftIndent и FirstLineIndent.

_Примечание: _

Если вы хотите знать, как использовать макросы, описанные на этой странице (или на любой другой странице на сайтах WordTips), я подготовил специальную страницу, содержащую полезную информацию.

link: / wordribbon-WordTipsMacros [Щелкните здесь, чтобы открыть эту специальную страницу в новой вкладке браузера].

WordTips — ваш источник экономичного обучения работе с Microsoft Word.

(Microsoft Word — самая популярная программа для обработки текстов в мире.) Этот совет (1759) применим к Microsoft Word 97, 2000, 2002 и 2003. Вы можете найти версию этого совета для ленточного интерфейса Word (Word 2007 и позже) здесь:

link: / wordribbon-Reverse_Numbered_Lists [Обратные нумерованные списки].