2016-05-19 44 views
0

公平的警告,這是我的第一個堆棧溢出問題:識別和總結斷開的超鏈接

我有兩個小區和形狀的幾個超鏈接表。我們即將重新排列我們的文件以更好地組織將破壞這些鏈接的文件夾。我在Stack Overflow上找到了一個有用的Q/A,它通過構建一個sub來檢查鏈接是否被破壞並突出顯示它。

我的問題是我如何確定斷鏈的錨點?

我想在工作簿「broken_hyper」中創建一個新工作表,其中列出了整個工作簿中的所有斷開鏈接,並創建了一個超鏈接(甚至是描述)返回到我可以找到並修復斷開鏈接的位置。

我嘗試使用

If objhttp.statustext <> "OK" Then 

    alink.Parent.Interior.Color = 255 
    ActiveSheet.Cells(i, 2) = alink.Parent 
    ActiveSheet.Hyperlink.Add _ 
     Anchor:=ActiveSheet.Cells(i, 2), _ 
     Address:=alink.Parent 
     i = i + 1 
End If 

但是,我找不到其他.parent.cells.row.cells.column,很容易定位錨下的任何財產。

任何幫助,非常感謝。我不是專業人士 - 到目前爲止,我所收到的一切都來自像你這樣的人的有益答案,所以非常感謝。

+0

'aLink.Parent'指向一個細胞,你會明顯找不到錨那裏。嘗試在'aLink'中直接搜索 – litelite

+0

我正在尋找'alink.parent'中的單元,所以我可以設置新的超鏈接'address:='「alink.parent單元格字符串」,這樣任何人都可以點擊鏈接導航到破碎的超鏈接。 – hoge36

+0

By _anchor_你的意思是(斷開的)鏈接在單元格中嗎? – litelite

回答

0

使用.Addressproperty

If objhttp.statustext <> "OK" Then 

    alink.Parent.Interior.Color = 255 
    ActiveSheet.Cells(i, 2) = alink.Parent 
    ActiveSheet.Hyperlink.Add _ 
     Anchor:=ActiveSheet.Cells(i, 2), _ 
     Address:=alink.Parent.Address 
     i = i + 1 
End If 
+0

感謝您的回答。我想鏈接回原始鏈接的單元格。基本上這個程序是找到所有的斷開的鏈接並創建它們的列表。我想要一個新的鏈接回到斷開的鏈接的位置(工作表很長),所以我不必尋找它。如果可能的話,我想使用'alink'屬性爲新的超鏈接創建':= address'參數。 – hoge36

+0

好吧,alink.parent.address'正在給我我需要的東西。我正在努力爭取讓vba現在創建新的超鏈接。謝謝你的幫助! – hoge36