2016-07-25 2 views
1

열 A에 하이퍼 링크 목록이 있습니다. 일부는 작동하지만 일부는 그렇지 않습니다. 나는 그들이 작동하는지 확인한 다음,없는 스크립트를 제거하는 스크립트를 만들려고합니다. 내가 가진 것은 :Excel에서 하이퍼 링크가 작동하는지 확인할 수 있습니까?

Sub UndoLink() 
Dim rng As Range 
Dim i As Long 
Dim n As String 
i = 2 
While i <= 4730 

Set rng = Range("A" & i) 
n = Range("A" & i).Value 
    If Worksheet.Function.FileExist(rng) = False Then 
     rng.Hyperlinks.Delete 
     i = i + 1 
    Else: i = i + 1 
    End If 
Wend 
End Sub 

Public Function FileExist(path As String) As Boolean 
    If Dir(path) <> vbNullString Then FileExist = True 
End Function 

하위의 FileExist를 참조 할 때 함수 오류가 발생합니다. 명확히하기 위해 하이퍼 링크는 모두 파란색으로 밑줄이 그어진 "648242"와 같은 문자열 내에 있습니다. 경로가 존재하지 않으면 하이퍼 링크를 제거하고 문자열을 유지하려고합니다. 이것이 가능한가?

rng.Hyperlinks.Delete 

답변

1

는 하이퍼 링크를 제거하십시오. 그것이 내가 누락 된 선이다. 하위에서 사용자 정의 함수를 참조하는 올바른 방법은 무엇입니까?
+0

최고 : – user1996971

+1

'MyVar = MyFunction (param)'과 비슷합니까? – Taosique

+0

나는 그렇게 생각하지 않는다. 'If' 문에 Object not defined 오류가 나타납니다. 그 라인에 문제가 있습니까? – user1996971

관련 문제