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

John Davis, Esq.

Вопрос был в том, как это правильно отсортировать, как это умеет делать читатель в WordPerfect. Лучшее долгосрочное решение, конечно, — преобразовать данные в формат базы данных, такой как Access, или даже в электронную таблицу, например Excel. Однако, если не считать этого, следующий макрос позволит правильно отсортировать список:

Sub CustomSort()

Set myrange = Selection.Range     For Each p In myrange.Paragraphs         p.Range.Select         If InStr(1, p, ",") > 0 Then             CharCount = InStr(1, p, ",") - 1             Selection.StartOf             Selection.MoveRight Unit:=wdCharacter, _               Count:=CharCount         Else             Selection.EndOf             Selection.MoveLeft Unit:=wdCharacter, _               Count:=1         End If         Selection.MoveLeft Unit:=wdWord, Count:=1         Selection.MoveLeft Unit:=wdCharacter, _           Count:=1, Extend:=wdExtend         Selection.TypeText Text:=vbTab     Next p     myrange.Select     Selection.Sort ExcludeHeader:=False, _       FieldNumber:="Field 2", _       SortFieldType:=wdSortFieldAlphanumeric, _       SortOrder:=wdSortOrderAscending, _       FieldNumber2:="Field 1", _       SortFieldType2:=wdSortFieldAlphanumeric, _       SortOrder2:=wdSortOrderAscending, _       FieldNumber3:="", _       SortFieldType3:=wdSortFieldAlphanumeric, _       SortOrder3:=wdSortOrderAscending, _       Separator:=wdSortSeparateByTabs, _       SortColumn:=False, _       CaseSensitive:=False, _       LanguageID:=wdLanguageNone End Sub

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

непосредственно перед этим словом с табуляцией. Таким образом, каждый абзац разделен на два поля: первое и, возможно, второе имя — это первое поле, а фамилия и возможный суффикс — это второе поле. Затем выбор сортируется по второму полю.

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

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

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

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

(Microsoft Word — самая популярная программа для обработки текстов в мире.) Этот совет (10077) применим к Microsoft Word 2007, 2010, 2013, 2016, 2019 и Word в Office 365. Вы можете найти версию этого совета для пользователей старый интерфейс меню Word здесь:

link: / word-Odd_Sorting [Нечетная сортировка].