Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
массовое изменение адресов гиперссылок в книге
 
The_Prist,большущее Вам спасибо, поставили меня на правильный путь!!! %20 - это эксель так заменил все пробелы в ссылках. и я тупо копировал путь из ссылки в макрос с процентами, убрал и все получилось. Спасибо, что потратили на меня время!!
массовое изменение адресов гиперссылок в книге
 
программа сама почему-то заменила все пробелы на "%20"
массовое изменение адресов гиперссылок в книге
 
я прошу прощения.
вот создал пример, там должен быть макрос test2. Может я чего не догоняю, но он не срабатывает.
массовое изменение адресов гиперссылок в книге
 
пробовал также:

Код
Sub ЗаменаИспорченныхГиперссылок()
    On Error Resume Next
    Dim hl As Hyperlink, oldString As String, newString As String, sh As Worksheet
    ' часть гиперссылки, подлежащая замене
   oldString = "../../../../COMMON/TDMaintenance/Транспортная%20сеть/Транспортная%20сеть/"
    ' на что заменяем
   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
не хочет работать и все тут. Я уже и в параметрах безопасности макросам все разрешил...
массовое изменение адресов гиперссылок в книге
 
Спасибо vikttur, ,

Код
Sub test2()
    On Error Resume Next
    Dim hl As Hyperlink, s As String, sh As Worksheet
    s = "../../../../COMMON/TDMaintenance/Транспортная%20сеть/Транспортная%20сеть/" ' часть гиперссылки, подлежащая удалению
    For Each sh In ActiveWorkbook.Worksheets
        For Each hl In sh.Hyperlinks
            If hl.Address Like s & "*" Then hl.Address = Replace(hl.Address, s, "")
        Next
    Next sh
End Sub

 
массовое изменение адресов гиперссылок в книге
 
The_Prist, не думаю, что я ленивый человек. Пробовал я много чего. К примеру:
Код
Sub test2()
On Error Resume Next
Dim hl As Hyperlink, s As String, sh As Worksheet
s = "../../../../Maintenance/Транспортная%20сеть/Транспортная%20сеть/" ' часть гиперссылки, подлежащая удалению
For Each sh In ActiveWorkbook.Worksheets
For Each hl In sh.Hyperlinks
If hl.Address Like s & "*" Then hl.Address = Replace(hl.Address, s, ""  
Next
Next sh
End Sub 
комп думает три секунды и.....ничего не меняется
массовое изменение адресов гиперссылок в книге
 
The_Prist,это мне не помогло, дело в том, что каждая гиперссылка в файле 1 имеет адрес разной ячейки второстепенного файла, поэтому мне необходимо только удалить первую часть адреса
массовое изменение адресов гиперссылок в книге
 
нет, ссылки во всей книге. в итоге надо чтобы удалилась чать пути /../../../Папка/Папка/ и осталось только название файла и ячейки....
массовое изменение адресов гиперссылок в книге
 
Доброе время суток!
У меня такая проблема:
Есть два файла, один основной(1), другой второстепенный(2). Оба находятся в одной папке. Каждая ячейка в файле 1 имеет гиперссылку на определенную ячейку в файле 2 и также обратно, для возвращения в основной файл.
В файле 1 гиперссылки не имели полного адреса расположения файла 2 в сетевой папке, что давало возможность копировать папку с обоими файлами, допустим, на флешку, и не ломая гиперссылки. Фактически адрес ссылки выглядел так: "Файл 2.xlsm#'Имя Листа'!Номер ячейки"
Сейчас на сетевом ресурсе что-то произошло, и в гиперссылках появились лишние адреса. В итоге всё начало выглядить так: /../../../Папка/Папка/"Файл 2.xlsm#'Имя Листа'!Номер ячейки". Можно ли при помощи какого-либо макроса удалить часть адреса гиперссылки, ну или заменить на пустоту сразу во всех гиперссылках документа?Их больше тысячи. Хэлп ми!!!
Страницы: 1
Наверх