© 2006, Денис Хворостин
Продолжаем тему полезных макросов для MS Word. Сегодняшний макрос позволяет вырезать из вордовских документов определенные строки и записывать их в отдельный файл, который потом можно сохранить. Представьте, что в документе, с которым вы работаете 50000 строк (а это несколько сотен страниц). Некоторые из строк представляют собой название страны, после которой идет словосочетание "language situation". И вот вам нужно вырезать все подобные строки, и при этом сохранить названия стран.
В рассматриваемом случае есть очевидный маркер для искомых строк - "language situation": именно по нему мы будем искать нужные строки. Осталось только добавить условие, при соблюдении которого процедура будет повторяться и макрос готов:
Sub Выборка()
'
' Макрос записан 22.12.06 Denis Khvorostin
'
Application.Keyboard (1033)
Selection.Find.ClearFormatting
qw1:
With Selection.Find
.ClearFormatting
.Wrap = wdFindStop
.Forward = True
.Format:=False
.Execute FindText:="language situation"
If .Found = True Then
Selection.Find.Execute
Selection.HomeKey Unit:=wdLine
Selection.EndKey Unit:=wdLine, Extend:=wdExtend
Selection.Cut
Windows(2).Activate
Selection.Paste
Windows(1).Activate
GoTo qw1
End If
If .Found = False Then
GoTo qw2
End If
End With
qw2:
End Sub
Этот макрос ищет в тексте строки, содержащие словосочетание "language situation". Перед запуском стоит создать еще один документ - в него будут вставляться вырезанные из файла-исходника строки. Само собой, вы можете изменить текст под себя. Можно, к примеру, автоматизировать создание файла-приемника и его сохранение. Однако же это попробуйте сделать самостоятельно.
Раздел: Компьютер | Добавлено 22 декабря 2006 г.