В этой статье мы сосредоточимся на демонстрации того, как удалить несколько страниц в документе Word с помощью VBA.
Составление документа требует корректировок все время. И удаление страниц содержимого так же необходимо, как и другие модификации. Удалить бесполезные тексты легко. Мost люди выбирают, чтобы сделать выбор, а затем нажмите «Удалить» или «Backspace», чтобы выполнить задачу.
Это, безусловно, даст вам то, что вы хотите. Но есть способ сделать это быстрее. Более того, вы пропускаете шаг выбора и удаляете сразу несколько страниц. Привлекательным подходом является запуск макроса Word.
Удалить текущую страницу
Для тех, кто ненавидит выделять диапазон текста, это может быть вашим благословением. Сначала давайте покажем вам, как удалить текущую страницу через VBA.
- Для начала наведите курсор на страницу, которую хотите удалить.
- Откройте редактор VBA в Word, щелкнув вкладку «Разработчик», а затем «Visual Basic». Если вкладка «Разработчик» еще недоступна на ленте, вместо этого нажмите «Alt + F11».
- Во-вторых, нажмите «Обычный».
- Затем нажмите «Вставить» и выберите «Модуль» в этом меню.
- Откройте новый модуль двойным щелчком мыши.
- И вставьте туда следующие коды:
Sub DeleteCurrentPage()
Dim objDoc As Document
' Initialize
Set objDoc = ActiveDocument
' Delete current page.
objDoc.Bookmarks("\Page").Range.Delete
End Sub
- Наконец, нажмите кнопку «Выполнить» или нажмите «F5».
Удалить несколько страниц
- Выполните шаги, описанные выше, чтобы установить и запустить макрос.
- Замените макрос на этот:
Sub DeletePagesInDoc()
Dim objRange As Range
Dim strPage As String
Dim objDoc As Document
Dim nSplitItem As Long
Application.ScreenUpdating = False
' Initialize and enter page numbers of pages to be deleted.
Set objDoc = ActiveDocument
strPage = InputBox("Enter the page numbers of pages to be deleted: " & vbNewLine & _
"use comma to separate numbers", "Delete Pages", "For example: 1,3")
nSplitItem = UBound(Split(strPage, ","))
' Find specified pages and highlight their contents.
For nSplitItem = nSplitItem To 0 Step -1
With ActiveDocument
Selection.GoTo What:=wdGoToPage, Which:=wdGoToAbsolute, Count:=Split(strPage, ",")(nSplitItem)
Set objRange = .Bookmarks("\Page").Range
objRange.Delete
End With
Next nSplitItem
Application.ScreenUpdating = True
End Sub
- Запуск макроса вызовет поле ввода. Введите номер страниц, которые необходимо удалить, и используйте запятую для их разделения. Не вводите пробел после запятой.
- Затем нажмите «ОК», чтобы продолжить.
Конечно, вы можете использовать этот макрос для удаления текущей страницы. Просто введите номер страницы.
Не позволяйте коррупции остановить вас
Как только произойдет сбой данных, это обязательно замедлит вашу повседневную работу, и вам придется нести дополнительные расходы.ost также. Чтобы убедиться, что ваши данные в целости и сохранности, вам лучше получить документ повреждения инструмент для ремонта.
Об авторе:
Вера Чен — эксперт по восстановлению данных в DataNumen, Inc., которая является мировым лидером в области технологий восстановления данных, включая исправить Excel и pdf ремонт программных продуктов. Для получения дополнительной информации посетите www.datanumen.com


