powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / поставить гиперссылку
11 сообщений из 11, страница 1 из 1
поставить гиперссылку
    #37209277
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
можно ли и как при помощи ВБА в Ворде на поле не выделяя его поставить гиперссылку??
...
Рейтинг: 0 / 0
поставить гиперссылку
    #37224395
Фотография Stepler
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ципихович Эндрю,

Мона, нарр так:
Код: plaintext
1.
ActiveDocument.Hyperlinks.Add Anchor:=Selection.Range, Address:="Ovi", _
        SubAddress:="", ScreenTip:="", TextToDisplay:=" "
При ентом поле не будет иметь название (типа "пробел"), а ссылка будет работать, если попадешь на поле
...
Рейтинг: 0 / 0
поставить гиперссылку
    #37227217
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Stepler,
Качнул я Ваш файл ни одного поля зрительно не увидел, хотя программно мне сообщает, что Колич = ActiveDocument.Fields.Count, Колич = 2.
Одним словом мне надо поставить ссылку на поле вида { REF Должность }, сейчас в цикле на него я ссылку ставлю так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
'перейти к полю, номер ...
Selection.GoTo What:=wdGoToField, Count:=(Обрабатываемое_поле_номер)
'запоминаем название закладки обрабатываемого поля
Значение_ссылки = Split(Код_обрабатываемого_поля)( 1 )
ActiveDocument.Fields(Обрабатываемое_поле_номер).Unlink

'переместить курсор на одно слово вправо с выделением
Selection.MoveRight Unit:=wdWord, Count:= 1 , Extend:=wdExtend
ActiveDocument.Hyperlinks.Add Anchor:=Selection.Range, Address:="", SubAddress:=Значение_ссылки, ScreenTip:="", TextToDisplay:=RTrim$(Selection.Range)
'переместить курсор на одно слово влево с выделением
Selection.MoveLeft Unit:=wdWord, Count:= 1 , Extend:=wdExtend
'выделенный текст сделать не подчёркнутым текстом
'подчёркивание ссылок сделаем после распечатки текста
Selection.Font.Underline = wdUnderlineNone
'выделяем, после установки ссылки, чтобы не сместились границы объекта
ActiveDocument.Range(Start:=Начало, End:=Конец).Select
То есть муторно!
Вот и спрашиваю как проще это сделать??
...
Рейтинг: 0 / 0
поставить гиперссылку
    #37227323
Фотография Stepler
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ципихович Эндрю,

Так я специально сделал поле невидимым (если подведешь мышку к курсору - предложит воспользоваться гиперссылкой), я подумал, что тебе нада поставить гиперссылку в то место, где находится курсор. Т.е. ставишь на тексте курсор в нужное место и запускаешь предложенный мною макрос.
Если хочешь подвести автоматом к нужному месту и назначить там гиперссылку, то скинь примерчик, посмотрю...
...
Рейтинг: 0 / 0
поставить гиперссылку
    #37227358
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Stepler, перед печатью докум. что делаю выделяю текст и запускаю макрос, там в выделенном много полей, условие если наткнулся на поле вида { REF Должность } поставитьне него гиперссылку, это делаю, но строго выделяя его, а нужно если можно не выделяя, то есть грубо говоря в тексте на промежутке от 0 до 20 поставить ссылку .... не выделяя этот промежуток
...
Рейтинг: 0 / 0
поставить гиперссылку
    #37227378
Фотография Stepler
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ципихович Эндрю,
так в чем дела-то,
ищешь по № поля, потом:
Selection.MoveRight Unit:=wdCharacter, Count:=
ActiveDocument.Hyperlinks.Add Anchor:=Selection.Range, Address:="", _
SubAddress:="Значение_ссылки", ScreenTip:="", TextToDisplay:=" "
...
Рейтинг: 0 / 0
поставить гиперссылку
    #37227400
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Stepler,
>ищешь по № поля, потом
что его искать, это цикл, известно, например 1, тогда
Selection.MoveRight Unit:=wdCharacter, Count:=1
ActiveDocument.Hyperlinks.Add Anchor:=Selection.Range, Address:="", _
SubAddress:="Значение_ссылки", ScreenTip:="", TextToDisplay:=" "
так?? То есть сначала к нему надо перейти??
Так это и будет то что у меня есть, а не выделяя поле можно?
...
Рейтинг: 0 / 0
поставить гиперссылку
    #37227995
Фотография Stepler
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ципихович Эндрю,

Я сначала не понял - думал нужно присвоить ссылку "слепую", без выделения и привязки текста.
А если хочешь Ципихович Эндрютак?? То есть сначала к нему надо перейти??
Так это и будет то что у меня есть, а не выделяя поле можно? , т.е. не выделяя Ципихович ЭндрюStepler, перед печатью докум. что делаю выделяю текст и запускаю макрос, там в выделенном много полей, то используй " Selection.GoTo...... ".
Посмотри в справке, там и по полям , и постраницам...

P/S/ а почему не нужно выделение?
...
Рейтинг: 0 / 0
поставить гиперссылку
    #37228006
Фотография Stepler
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ципихович ЭндрюStepler,
Качнул я Ваш файл ни одного поля зрительно не увидел, хотя программно мне сообщает, что Колич = ActiveDocument.Fields.Count, Колич = 2.
Одним словом мне надо поставить ссылку на поле вида { REF Должность }, сейчас в цикле на него я ссылку ставлю так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
'перейти к полю, номер ...
Selection.GoTo What:=wdGoToField, Count:=(Обрабатываемое_поле_номер)
'запоминаем название закладки обрабатываемого поля
Значение_ссылки = Split(Код_обрабатываемого_поля)( 1 )
ActiveDocument.Fields(Обрабатываемое_поле_номер).Unlink

'переместить курсор на одно слово вправо с выделением
Selection.MoveRight Unit:=wdWord, Count:= 1 , Extend:=wdExtend
ActiveDocument.Hyperlinks.Add Anchor:=Selection.Range, Address:="", SubAddress:=Значение_ссылки, ScreenTip:="", TextToDisplay:=RTrim$(Selection.Range)
'переместить курсор на одно слово влево с выделением
Selection.MoveLeft Unit:=wdWord, Count:= 1 , Extend:=wdExtend
'выделенный текст сделать не подчёркнутым текстом
'подчёркивание ссылок сделаем после распечатки текста
Selection.Font.Underline = wdUnderlineNone
'выделяем, после установки ссылки, чтобы не сместились границы объекта
ActiveDocument.Range(Start:=Начало, End:=Конец).Select
То есть муторно!
Вот и спрашиваю как проще это сделать??


Усё, вроде правильно, так чего хотим??? Я тупой - не понимаю!!!
...
Рейтинг: 0 / 0
поставить гиперссылку
    #37229428
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Stepler, плохой тон в настоящее время чтобы что-то сделать выделять это, это я так считаю, если бы года два назад когда знаний в программировании было мало я бы внимания не обратил на это, пашет и ладно, а сейчас старые мои код просматриваю, подчищаю
...
Рейтинг: 0 / 0
поставить гиперссылку
    #37229433
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
забыл сказать надо на объект поставить ссылку не выделяя его
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / поставить гиперссылку
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]