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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 07.02.2013, 16:32   #1
Reku
Новичок
Джуниор
 
Регистрация: 07.02.2013
Сообщений: 1
По умолчанию Макрос замены гиперссылок

Здравствуйте!

Стоит Excel 2010. Сбились гиперссылки, понадобилось восстановить - вручную слишком долго. Нашел в интернете вот такой макрос

Sub ЗаменаИспорченныхГиперссылок()
On Error Resume Next
Dim hl As Hyperlink, oldString As String, newString As String, sh As Worksheet
' часть гиперссылки, подлежащая замене
oldString = "C:\Documents and settings\Бухгалтер\Application data"
' на что заменяем
newString = "\\адрес_сервера"
For Each sh In ActiveWorkbook.Worksheets ' перебираем все листы в активной книге
For Each hl In sh.Hyperlinks ' перебираем все гиперссылки на листе
If hl.Address Like oldString & "*" Then
hl.Address = Replace(hl.Address, oldString, newString)
End If
Next
Next sh
End Sub

Сделал его под себя - то есть выставил пути как нужно. Он сработал 1 раз как и положено. Затем этот файл переместили в другую папку - я переписал пути и... Скрипт не сработал. И вообще перестал работать. Я зашел в "Войти" в Макросах и там можно выделить все строчки красным (красная точка и красная линия), кроме Dim hl As Hyperlink, oldString As String, newString As String, sh As Worksheet. На нее так же нельзя перетащить стрелку дебага. То есть я так понял скрипт стопорится на ней. Хотя 1 раз скрипт точно сработал. Я сохранил документ, затем его немного переместили, я изменил скрипт снова как надо (то есть пути) и он все равно не работает. Есть идеи?
Reku вне форума Ответить с цитированием
Старый 07.02.2013, 16:36   #2
The_Prist
Участник клуба
 
Аватар для The_Prist
 
Регистрация: 17.07.2009
Сообщений: 1,088
По умолчанию

Может код из этой статьи чем поможет?
Как массово изменить гиперссылки?
WebMoney - R298726502453; Яндекс.Деньги - 41001332272872
www.excel-vba.ru
The_Prist вне форума Ответить с цитированием
Старый 07.02.2013, 16:51   #3
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

Ответил в комментариях на сайте:
http://excelvba.ru/code/replace_hyperlinks#comment-1932
EducatedFool вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Макрос замены в word Foma-78 Microsoft Office Word 3 19.06.2012 05:33
Макрос замены с переменной ekvador Microsoft Office Word 4 12.03.2012 03:08
макрос открытия гиперссылок sersh1 Microsoft Office Excel 2 29.09.2011 13:24
Макрос для активации гиперссылок. Jum Microsoft Office Excel 3 04.02.2010 16:06
Макрос пакетной замены swan1976 Microsoft Office Word 2 26.12.2009 17:48