1

Тема: Как использовать одну и ту же закладку несколько раз в тексте?

Есть необходимость несколько раз в тексте использовать одну и ту же закладку ( например, номер договора). Как это сделать?

2

Re: Как использовать одну и ту же закладку несколько раз в тексте?

Ztanusha пишет:

Есть необходимость несколько раз в тексте использовать одну и ту же закладку ( например, номер договора). Как это сделать?

Создайте пользовательское свойство документа, напр., с названием "Nomer_dogovora". Затем в тех местах документа, где необходимо сослаться на номер договора, вставьте поле типа Docproperty. Вот пример (фигурные скобки обозначают границы поля):
          {DOCPROPERTY "Nomer_dogovora" }
Чтобы вставить поле, сначала нажмите Ctrl+F9, затем внутри поля впишите содержимое поля.
Чтобы добавить пользовательское свойство (привожу пример для английской версии Word), отобразите окно атрибутов (File > Info > Properties > Advanced properties и на вкладке Custom укажите имя свойства (тип - текстовое свойство) и его значение, нажмите ОК для фиксации нового свойства. В дальнейшем значение свойства можно изменить. Для того, чтобы новое или измененное значение свойства обновилось в документе, обновите поля (выделите весь текст, нажмите F9).
Кстати, вы в своем сообщении говорите о "закладке". В Word этот термин имеет другой смысл: поименованная область текста (bookmark в английском варианте). С использованием именно закладки вашу задачу можно реализовать так: набрать в одном месте номер договора, отметить это место закладкой, а в других местах сослаться на эту закладкой через перекрестную ссылку на эту закладку.
Предложенный первым способ с использованием пользовательского свойства лучше тем, что источник информации (номер договора) постоянно скрыт и не может быть случайно удален.

3

Re: Как использовать одну и ту же закладку несколько раз в тексте?

Попытки использовать перекрестную ссылку не увенчались успехом. (3 лист документа)  Может я не так что то делаю. Номер договора  (N) у меня вставляется в шаблон как переменная из программы.

4

Re: Как использовать одну и ту же закладку несколько раз в тексте?

Ztanusha пишет:

... Номер договора  (N) у меня вставляется в шаблон как переменная из программы.

Видимо, она у вас вставляется из программы в документ как текст, а вы попросите разработчика программы вставлять эти данные в документ программно как закладку (bookmark). Либо сами вручную выставьте закладку на этот текст, а затем делайте кросс-ссылки на эту закладку -  выполните (пример для английского интерфейса в Word):
1. Выделите текст номера договора, затем Insert > Bookmark > указать имя закладки > Add
2. Поместить курсор в место вставки ссылки > Insert > Cross-reference > Bookmark (выбрать тип ссылки) > указать имя закладки > Insert > Close
Повторить п.2 во всех местах, где надо сослаться на номер договора.
Пример кросс-ссылки на закладку в прицепе.
Если же вставляемый номер договора вы обнаружите в своем программно созданном документе как пользовательское свойство (DOCPROPERTY) или переменную Word (DOCVARIABLE), то для ссылки на номер договора вставлять надо соответствующее поле Word.

Post's attachments

Кросс-ссылка на закладку номера договора.docx 30.58 Кб, 4 скачиваний с 2016-11-30 

You don't have the permssions to download the attachments of this post.

5

Re: Как использовать одну и ту же закладку несколько раз в тексте?

вот файл

Post's attachments

contractpay.dotx 33.91 Кб, 1 скачиваний с 2016-11-30 

You don't have the permssions to download the attachments of this post.

6

Re: Как использовать одну и ту же закладку несколько раз в тексте?

yshindin пишет:
Ztanusha пишет:

... Номер договора  (N) у меня вставляется в шаблон как переменная из программы.

Видимо, она у вас вставляется из программы в документ как текст, а вы попросите разработчика программы вставлять эти данные в документ программно как закладку (bookmark). Либо сами вручную выставьте закладку на этот текст, а затем делайте кросс-ссылки на эту закладку -  выполните (пример для английского интерфейса в Word):
1. Выделите текст номера договора, затем Insert > Bookmark > указать имя закладки > Add
2. Поместить курсор в место вставки ссылки > Insert > Cross-reference > Bookmark (выбрать тип ссылки) > указать имя закладки > Insert > Close
Повторить п.2 во всех местах, где надо сослаться на номер договора.
Пример кросс-ссылки на закладку в прицепе.
Если же вставляемый номер договора вы обнаружите в своем программно созданном документе как пользовательское свойство (DOCPROPERTY) или переменную Word (DOCVARIABLE), то для ссылки на номер договора вставлять надо соответствующее поле Word.

почему то ваш файл не скачивается sad

7

Re: Как использовать одну и ту же закладку несколько раз в тексте?

Вот файл  шаблона и файл- результат

Post's attachments

contractpay.dotx 34.26 Кб, файл не был скачан. 

You don't have the permssions to download the attachments of this post.

8

Re: Как использовать одну и ту же закладку несколько раз в тексте?

результат

Post's attachments

ДОГОВОР.docx 35.2 Кб, файл не был скачан. 

You don't have the permssions to download the attachments of this post.

9

Re: Как использовать одну и ту же закладку несколько раз в тексте?

Ztanusha пишет:

...почему то ваш файл не скачивается

Да, файл почему-то не скачивается сразу, надо подождать.
Я скачал ваш файл и посмотрел - у вас для номера договора предусмотрена закладка с именем "N". Трудность в том, что эта закладка нулевой длины, поэтому трудно вручную обновить ее значение. Можно удалить эту закладку, вставить номер договора и на введенный номер договора установить снова закладку с именем "N". А можно и применить следующий код (предварительно указав актуальный номер договора в операторе присвоения значения переменной bmk_val):

Sub SpecifyBookmarkValue()
Dim bmk_range As Range
Dim bmk_name As String
Dim bmk_val As String
bmk_name = "N"
bmk_val = "115/3451/673" 'specify real value here
Set bmk_range = ActiveDocument.Bookmarks(bmk_name).Range
bmk_range.Text = bmk_val
ActiveDocument.Bookmarks.Add bmk_name, bmk_range 're-insert the bookmark
End Sub

10

Re: Как использовать одну и ту же закладку несколько раз в тексте?

yshindin пишет:

...
Трудность в том, что эта закладка нулевой длины, поэтому трудно вручную обновить ее значение.
...

Рекомендую при работе с закладками отображать в Word границы закладок (File > Options > в группе настроек Show document content отметить флажок Show bookmarks). На печатном листе эти границы не будут отпечатаны.

11

Re: Как использовать одну и ту же закладку несколько раз в тексте?

yshindin пишет:

...
А можно и применить следующий код (предварительно указав актуальный номер договора в операторе присвоения значения переменной bmk_val)
...

Способ через исполнение макроса более предпочтителен, т.к. если на закладку в документе уже были установлены кросс-ссылки, то после вызова макроса и обновления полей в документе не будет битых ссылок, связанных с полями кросс-ссылок. Первый способ (пересоздание закладки) уместен при начальном формировании документа. Второй способ рекомендуется, когда, напр., на базе текущего документа надо сформировать новый документ с другим номером договора.