Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Word
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 30.11.2008, 17:47   #1
tolikman
Форумчанин
 
Регистрация: 25.08.2008
Сообщений: 159
Злость Закладки VS разравы страниц

И снова здраствуйте!
у меня есть код
модуль1:
Код:
Public Sub pPAGEBREAK()
    file.Range(cursor, cursor).InsertBreak (wdPageBreak)
    pCursor = cursor
    cursor = cursor + 1
End Sub
Public Sub pBOOKMARK(name)
    Dim rng As Range
    Dim bkmr As Bookmark
    Set rng = file.Range(cursor, cursor) 'или просто Set rng = file.Range(cursor) - одно и то же в результате
    Set bkmr = file.Bookmarks.Add(name, rng)
End Sub
,где cursor - текущее положение в word'e
если писать:
Код:
pPAGEBREAK
pPAGEBREAK
pPAGEBREAK
,то в документе создается 3 страницы (как не странно, да?)
,а если писать так:
Код:
pPAGEBREAK
pBOOKMARK "1"
pPAGEBREAK
pBOOKMARK "2"
pPAGEBREAK
pBOOKMARK "3"
,то создается 1 страница на которой все три закладки расположены друг за другом
Я не могу понять, в чем здесь проблема, закладки принудительно съедают разрывы? (кстати пытался после разрыва страницы "enter'ов" понаставить, тоже самое!)
или ошибка в коде? помогите пожалуйста.
tolikman вне форума Ответить с цитированием
Старый 09.01.2009, 15:03   #2
viter.alex
Балуюсь кодами
Участник клуба
 
Аватар для viter.alex
 
Регистрация: 09.01.2009
Сообщений: 1,837
По умолчанию

Как ты объявил cursor?
В пошаговом режиме (F8) посмотри, что происходит с документом (что выделяется после вставки закладки). Там есть какой-то прикол при вставке закладки.
Кстати, имена закладок не могут начинаться с цифр, а уж состоять из одних цифр, тем более.
Лучше день потерять — потом за пять минут долететь!©

Последний раз редактировалось viter.alex; 09.01.2009 в 15:05.
viter.alex вне форума Ответить с цитированием
Старый 09.01.2009, 15:27   #3
tolikman
Форумчанин
 
Регистрация: 25.08.2008
Сообщений: 159
По умолчанию

цифры - это к примеру.
cursor это моя переменная которая увеличивается(или уменьшается) моими функциями которыми я пользуюсь.
tolikman вне форума Ответить с цитированием
Старый 10.01.2009, 00:27   #4
viter.alex
Балуюсь кодами
Участник клуба
 
Аватар для viter.alex
 
Регистрация: 09.01.2009
Сообщений: 1,837
По умолчанию

Смотри, я сделал так, все работает.
Код:
Public Sub pPAGEBREAK()
    Selection.InsertBreak wdPageBreak
End Sub
Public Sub pBOOKMARK(name As String)
    Dim rng As Range
    Dim bkmr As Bookmark
    Set rng = Selection.Range 'или просто Set rng = file.Range(cursor) - одно и то же в результате
    Set bkmr = ActiveDocument.Bookmarks.Add(name, rng)
End Sub

Sub try_()
  Dim i As Integer
  For i = 0 To 3
    pPAGEBREAK
    pBOOKMARK Replace("bookmark" & Str$(i), " ", "")
  Next i
End Sub
Лучше день потерять — потом за пять минут долететь!©
viter.alex вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
TWebBrowser Закладки aesoem Компоненты Delphi 7 01.05.2021 21:05
Как создавать закладки? raz Общие вопросы Delphi 5 31.03.2008 13:26
Добавить в закладки Никки JavaScript, Ajax 2 09.02.2008 17:43
как избавиться от закладки ЧИЖ Общие вопросы Delphi 3 24.06.2007 00:05