2016-10-25 2 views
0

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

ActiveWorkbook.UpdateLink Name:=ActiveWorkbook.LinkSources 

Как я могу сделать следующее:

'Pseudocode 
If link is valid Then 
    Update 
Else 
    Go to next link 
End If 

ответ

0

Вы можете прочитать ссылки, используя Workbook.LinkSources свойство, которое возвращает массив имен ссылок, а затем вы можете обновлять каждую ссылку по отдельности, игнорируя при этом ошибки:

Sub SafeUpdateLink(LinkName As String) 
    On Error Resume Next 
    ActiveWorkbook.UpdateLink Name:=LinkName 
End Sub 

Sub UpdateAllLinks 
    Dim x As Variant 
    For Each x In ActiveWorkbook.LinkSources 
     SafeUpdateLink x 
    Next 
End Sub