Модуль Excel VBA для проверки, ссылается ли строка гиперссылки на действительный файл - PullRequest
0 голосов
/ 03 декабря 2018

Я пытаюсь найти способ проверить, указывает ли строка гиперссылки в Excel на допустимый файл в нашей сети.Но мое ограниченное знание VBA, кажется, становится лучше меня.

Пример: Гипотетическая функция "HyperTest" возвращает TRUE или FALSE в зависимости от действительности Hyperlink.Ячейка A1 содержит «c: \ 123.txt» Ячейка B1 содержит »= IF (HyperTest (A1),« Да, файл настоящий! »,« Похоже, кто-то удалил ваш файл. »)

Iпредположим, что код модуля должен выглядеть примерно так:

Public Function HyperTest(hyperpath As String) As Boolean
If [insert test here] Then
   return TRUE

Else
   return FALSE

End If

End Function

Ответы [ 2 ]

0 голосов
/ 03 декабря 2018

Вы можете использовать этот маленький UDF, чтобы получить свой OP

Function HyperTest(c As Range)
    If Dir(c) <> "" Then
        HyperTest = "File exists."
    Else
        HyperTest = "File doesn't exist."
    End If
End Function

и вызвать эту функцию в любой ячейке

enter image description here

0 голосов
/ 03 декабря 2018

Вы можете использовать функцию Dir() .Если путь не существует, функция ничего не возвращает.А поскольку логическое значение по умолчанию равно False, вам не нужен оператор Else.

Public Function HyperTest(hyperpath As String) As Boolean

    If Dir(hyperpath) <> vbNullString Then HyperTest = True

End Function
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...