:: Не фоксом единым
Коллекция field word
boba
Автор

Сообщений: 6269
Откуда: Медвежьи озера-
Дата регистрации: 26.03.2001
Кто-нибудь работал с коллекция field в word
и hyperlinks в ней?
Мой коллега в ворде готовил макет для help
нашей программы. После многочисленных редакций и вставок разделов выше.
ворд все видит, править ошибки hyperlink невозможно там руками
Программа построения help не ест и считает ошибками
Я повозился часик, и так и не понял объектную модель
типа word.activedocument.Hyperlinks.item(1)

word.activedocument.field(1).result.formattedtext.text
нашел также как достать hyperlink из field
Записал на бумажку видимые методы, но дальше застрял,
так как не понимаю общей объектной можели этих штук

Вот путанное объяснение моего коллеги того, что нужно проделать с испорченным документов
Он упоминает скрытые поля, но коллекция field никаких таких свойств не имеет,
видны все поля.

__________________

надо "навести порядок" в названиях скрытых (?) полей,
которые Word автоматически расставляет по тексту
при создании оглавления, гиперссылок и т.д.
Сам Word все эти поля (в прицепленном файле)
прекрасно понимает, но когда я пытаюсь обрабатывать
свой Word-файл в других программах, то там возникают
ошибки. Причина этих ошибок: та (другая ) программа
отбрасывает кириллические символы из названий
полей и они перестают быть уникальными.

--------- 2. Про какие именно поля вопрос:

Некоторые поля (не знаю какие именно!)
автоматически создаются Word-ом при
создании внутренней гиперссылки.
Единственное назначение такого поля -
это зафиксировать (указать) точку в документе,
на которую ссылается гиперссылка.
Я не знаю, как правильно называются такие поля,
поэтому буду писать "Href_Target_Point"
Так вот.
Нужно исправлять ТОЛЬКО поля Href_Target_Point,
А ТАКЖЕ привязанные к ним гиперссылки
(чтобы после переименования поля
гиперссылка продолжала работать)

--------- 3. Что именно нужно сделать

Всего есть три задачи. Решение ЛЮБОЙ из них
существенно поможет, так как уменьшит число
ошибок при обработке файла в другой программе.
Но в идеале, надо решить все три:


--------- 3.1. Найти и удалить "мусор"

Надо найти все неиспользуемые в документе
Href_Target_Point
(то есть те, к которым не привязана ни одна гмперссылка)
и удалить их.


--------- 3.2. Найти и переименовать дубли

Надо найти все пары (тройки) полей Href_Target_Point
с одинаковой латинской частью имени (кириллическая часть
у них всегда разная!!)
После этого надо переименовать такие поля И
привязанные к ним гиперссылки, добавив к названию
какие-то латинские символы, чтобы обеспечить
их уникальность "в латинице".

Либо (что еще удобнее) нужен макрос, который позволяет
это сделать в диалоге для конкретного поля.
ТО есть я нахожу (вводу) названия поля Href_Target_Point,
задаю ему новое имя, и макрос переименовывает это поле,
А ТАКЖЕ все привязанные к нему гиперссылки,
чтобы они продолжали работать после переименования


--------- 3.3. Объединить дублирующие друг друга Href_Target_Point,

Если в одном абзаце документа имеется несколько Href_Target_Point,
то надо:
1) Найти все гиперссылки, привязанные к любой из этих Href_Target_Point,
2) перепривязать их к одной (любой!) Href_Target_Point
3) удалить все остальные Href_Target_Point в этом абзаце,
которые после выполнения пп.2 стали "мусором".
Ratings: 0 negative/0 positive


Извините, только зарегистрированные пользователи могут оставлять сообщения в этом форуме.

On-line: 4 (Гостей: 4)

© 2000-2024 Fox Club 
Яндекс.Метрика