1

Тема: Удаление страницы из документа

прочитал Как удалить страницу в word
дело в том что в 2003 и 2010 word не работает пункт из той статьи

В открывшемся окне теперь введите номер страницы, которую необходимо удалить, и нажмите на кнопку «Перейти». Далее весь присутствующий на удаляемой странице текст будет выделен.

ничего подобного, текст не выделяется, просто курсор становится в начало этой страницы.
я правильно понимаю что инструмента не существует для удаления страницы без выделения фрагмента? ну либо макрос какой написать...ток вот алгоритм будет какой у него..

2

Re: Удаление страницы из документа

aka_smile пишет:

прочитал Как удалить страницу в word
дело в том что в 2003 и 2010 word не работает пункт из той статьи

В открывшемся окне теперь введите номер страницы, которую необходимо удалить, и нажмите на кнопку «Перейти». Далее весь присутствующий на удаляемой странице текст будет выделен.

ничего подобного, текст не выделяется, просто курсор становится в начало этой страницы.
я правильно понимаю что инструмента не существует для удаления страницы без выделения фрагмента? ну либо макрос какой написать...ток вот алгоритм будет какой у него..

У меня в Word 2007 эта функциональность тоже не работает. Страница не выделяется.

Удобной и приятной работы в Word!
Перевести спасибо на Яндекс кошелёк - 41001162202962; на WebMoney - R581830807057.

3

Re: Удаление страницы из документа

aka_smile пишет:

я правильно понимаю что инструмента не существует для удаления страницы без выделения фрагмента? ну либо макрос какой написать...ток вот алгоритм будет какой у него..

Алгоритм может быть, например, такой:

(Определить номер текущей страницы)
n = <номер_текущей_страницы>
Selection.GoTo What:=wdGoToPage, Which:=wdGoToNext, Name:=n    ' поместить курсор в начало текущей страницы
(Определить номер от начала текущей строки)
m1 = <номер_текущей_строки>
Selection.GoTo What:=wdGoToPage, Which:=wdGoToNext, Name:=n + 1    ' поместить курсор в начало следующей страницы
(Определить номер от начала текущей строки)
m2 = <номер_текущей_строки>      ' номер от начала первой строки следующей страницы

' выделяем все строки страницы
Selection.MoveDown Unit:=wdLine, Count:=m2 - m1, Extend:=wdExtend
' удаляем все строки страницы
Selection.Delete Unit:=wdCharacter, Count:=1

К сожалению, не помню, как определить номер страницы и номер строки.

Удобной и приятной работы в Word!
Перевести спасибо на Яндекс кошелёк - 41001162202962; на WebMoney - R581830807057.

4

Re: Удаление страницы из документа

aka_smile пишет:

я правильно понимаю что инструмента не существует для удаления страницы без выделения фрагмента? ну либо макрос какой написать...ток вот алгоритм будет какой у него..

Уважаемый aka_smile!

Примерно так получается:

n = Selection.Information(wdActiveEndPageNumber)   ' Определить номер текущей страницы
Selection.GoTo What:=wdGoToPage, Which:=wdGoToNext, Name:=n    ' поместить курсор в начало текущей страницы
m1 = Selection.Information(wdFirstCharacterLineNumber)  ' Определить номер первой строки текущей страницы
Selection.GoTo What:=wdGoToPage, Which:=wdGoToNext, Name:=n + 1    ' поместить курсор в начало следующей страницы
' перейти на последнюю строку текущей страницы
Selection.MoveUp Unit:=wdLine, Count:=1
m2 = Selection.Information(wdFirstCharacterLineNumber)  ' Определить номер последней строки текущей страницы
Selection.GoTo What:=wdGoToPage, Which:=wdGoToNext, Name:=n    ' поместить курсор в начало текущей страницы
' выделяем все строки страницы
Selection.MoveDown Unit:=wdLine, Count:=m2 - m1 + 1, Extend:=wdExtend
' удаляем все строки страницы
Selection.Delete Unit:=wdCharacter, Count:=1

Удобной и приятной работы в Word!
Перевести спасибо на Яндекс кошелёк - 41001162202962; на WebMoney - R581830807057.

5

Re: Удаление страницы из документа

Прошу прощения, несколько усовершенствовал макрос удаления страницы и убрал несколько лишних операторов:

' Определить номер текущей страницы
n = Selection.Information(wdActiveEndPageNumber)
' Поместить курсор в начало следующей страницы
Selection.GoTo What:=wdGoToPage, Which:=wdGoToNext, Name:=n + 1
' Перейти на последнюю строку текущей страницы
Selection.MoveUp Unit:=wdLine, Count:=1
' Определить номер последней строки текущей страницы
m1 = Selection.Information(wdFirstCharacterLineNumber)

' Поместить курсор в начало текущей страницы
Selection.GoTo What:=wdGoToPage, Which:=wdGoToNext, Name:=n
' Выделяем все строки страницы
Selection.MoveDown Unit:=wdLine, Count:=m1, Extend:=wdExtend
' Удаляем все строки страницы
Selection.Delete Unit:=wdCharacter, Count:=1

Удобной и приятной работы в Word!
Перевести спасибо на Яндекс кошелёк - 41001162202962; на WebMoney - R581830807057.

6

Re: Удаление страницы из документа

Товарищи, страницу можно удалить при наличии знака разрыва страниц.........

7

Re: Удаление страницы из документа

aap77
вы не в "теме"
еще раз прочитайте 1й пост и статью из него

8

Re: Удаление страницы из документа

Алгоритм будет такой:

'Переход на заданную страницу
Selection.GoTo wdGoToPage, wdGoToAbsolute, "Номер страницы"
'Удаление страницы, на которой находится курсор
Selection.Bookmarks("\page").Range.Delete
Лучше день потерять — потом за пять минут долететь!

9

Re: Удаление страницы из документа

viter.alex пишет:

'Переход на заданную страницу
Selection.GoTo wdGoToPage, wdGoToAbsolute, "Номер страницы"
'Удаление страницы, на которой находится курсор
Selection.Bookmarks("\page").Range.Delete


Алекс, это здОрово! Второе выражение прекрасно удаляет страницу!
К сожалению, первое -
Selection.GoTo wdGoToPage, wdGoToAbsolute, "Номер страницы"
почему-то у меня в 2007 не работает.
Выдает ошибку:
Run-time error 4120
Неверный параметр

Удобной и приятной работы в Word!
Перевести спасибо на Яндекс кошелёк - 41001162202962; на WebMoney - R581830807057.

10

Re: Удаление страницы из документа

Я надеюсь, номер страницы указан числом?

Лучше день потерять — потом за пять минут долететь!

11

Re: Удаление страницы из документа

viter.alex пишет:

Я надеюсь, номер страницы указан числом?

Более бесопасно удалять текущую страницу, что прекрасно получается с помощью выражения:
Selection.Bookmarks("\page").Range.Delete

Удобной и приятной работы в Word!
Перевести спасибо на Яндекс кошелёк - 41001162202962; на WebMoney - R581830807057.

12

Re: Удаление страницы из документа

viter.alex пишет:

Я надеюсь, номер страницы указан числом?

Простите, Алекс, я понял Ваш вопрос.
Было написано: "Номер страницы".
Если указать конкретный номер страницы (например, для страницы 3:
Selection.GoTo wdGoToPage, wdGoToAbsolute, "3"), то все работает!
Супер!!!

Удобной и приятной работы в Word!
Перевести спасибо на Яндекс кошелёк - 41001162202962; на WebMoney - R581830807057.

13

Re: Удаление страницы из документа

дык в том то и дело что в макросе не нужно конкретно прописывать стр
друзья какой вариант можно считать финальным?

14

Re: Удаление страницы из документа

aka_smile пишет:

дык в том то и дело что в макросе не нужно конкретно прописывать стр
друзья какой вариант можно считать финальным?

Selection.Bookmarks("\page").Range.Delete
- это финальный вариант.
Удаляет текущую страницу. Проверьте еще.

Удобной и приятной работы в Word!
Перевести спасибо на Яндекс кошелёк - 41001162202962; на WebMoney - R581830807057.