Здравствуйте.
Я в работе создал список договоров и в поле с номером создал гиперссылку на сам договор в электронном виде. Но через какое-то время гиперссылки сбились и стали указывать на временную папку в "Моих документах". Я решил поменять гиперссылки на формулы, что в принципе руками неплохо получается. Но так как список договоров довольно приличный, я решил автоматизировать это действие и написал макрос. Вот так он выгладит:
Код |
---|
Sub Макрос8()
' Замена геперссылки на формулу
Dim Имя As String, ИмяФайла As String
Dim ЧастиАдреса$()
НомерДоговора = ActiveCell
ЧастиАдреса = Split(ActiveCell.Hyperlinks(1).Address, "\")
ИмяФайла = ЧастиАдреса(UBound(ЧастиАдреса))
ТекстФормулы = "=ГИПЕРССЫЛКА(СЦЕПИТЬ(ПапкаДоговоров;""\"";""" & ИмяФайла & """);""" & НомерДоговора & """)"
ActiveCell.Formula = ТекстФормулы
End Sub
|
Папка договоров - это путь к папке, в которой хранятся договора, прописанный в Диспетчере имен. Сравнивая получающуюся формулу с той, которую я ввожу вручную мне кажется, что они одинаковые.
Однако, макрос выдает ошибку:
Может подскажите, где моя ошибка и как ее можно исправить?
Заранее благодарен.