Добрый вечер! Подскажите пожалуйста. Есть файл в котором более 1500 гиперссылок на файлы, которые находятся на компьютере. Гиперссылки сделаны по средствам Excel (=Гиперссыла(ячейка с адресом на компьютере)) Как можно проверить работоспособность (т.е. наличие файла по данной гиперссылке) по средствам VBA?
Гуглил данный вопрос, но нашел только код для проверки Web ссылок в интернете. Заранее спасибо!
Добрый вечер! Подскажите пожалуйста. Есть файл в котором более 1500 гиперссылок на файлы, которые находятся на компьютере. Гиперссылки сделаны по средствам Excel (=Гиперссыла(ячейка с адресом на компьютере)) Как можно проверить работоспособность (т.е. наличие файла по данной гиперссылке) по средствам VBA?
Гуглил данный вопрос, но нашел только код для проверки Web ссылок в интернете. Заранее спасибо!alex_07
Прикладываю файл, в котором расположил макрос найденный в интернете, однако он не работает. Как я подозреваю, из за того что он (макрос) проверяет Web ссылки, а не ссылки на файлы.
Прикладываю файл, в котором расположил макрос найденный в интернете, однако он не работает. Как я подозреваю, из за того что он (макрос) проверяет Web ссылки, а не ссылки на файлы.alex_07
Sub Main() Dim c As Range [c6] = ThisWorkbook.FullName 'ЛИШНЯЯ СТРОКА (ДЛЯ ПРОВЕРКИ) For Each c In Range("D6:D100") c.Offset(, 1) = TestHyperlink(c.Text) Next c End Sub
Function TestHyperlink(s As String) As Boolean TestHyperlink = Len(s) And Dir(s, 63) > "" End Function
[/vba]
Держите - [vba]
Код
Sub Main() Dim c As Range [c6] = ThisWorkbook.FullName 'ЛИШНЯЯ СТРОКА (ДЛЯ ПРОВЕРКИ) For Each c In Range("D6:D100") c.Offset(, 1) = TestHyperlink(c.Text) Next c End Sub
Function TestHyperlink(s As String) As Boolean TestHyperlink = Len(s) And Dir(s, 63) > "" End Function
Sub Main() Dim c As Range ChDrive ThisWorkbook.Path ChDir ThisWorkbook.Path For Each c In Range("D6:D100") c.Offset(, 1) = TestHyperlink(c.Text) Next c End Sub
Function TestHyperlink(s As String) As Boolean TestHyperlink = Len(s) And Dir(s, 63) > "" End Function
[/vba]
А так? [vba]
Код
Sub Main() Dim c As Range ChDrive ThisWorkbook.Path ChDir ThisWorkbook.Path For Each c In Range("D6:D100") c.Offset(, 1) = TestHyperlink(c.Text) Next c End Sub
Function TestHyperlink(s As String) As Boolean TestHyperlink = Len(s) And Dir(s, 63) > "" End Function