好吧,所以我有兩個工作表在我的excel文件中,頭和信息,並且都通過部分和子部分進行排序(albiet有點不同,頭部有第7小節1,而Info有7.01節和子部分X)。所以我現在有我的代碼設置搜索正確的部分(我通過調試知道這一點),但根據我如何改變Searcha和CreateHyperlink函數,我得到一個運行時5錯誤(用於創建超鏈接)或1094 ?我認爲......自從我出現這個錯誤以來,我已經有一段時間了,如果我找到了重現它的方法,我會更新它。VBA搜索並創建一個超鏈接
這是特定地點與錯誤:
rownumber = Range("A:A").Find(search)
Sheets("Headers").Hyperlinks.Add Sheets("Headers").Cells(i, 3), "", Sheets("Info").Cells(rownumber, 1), "", link
這一切:
'Create new Hyperlinks
Dim i As Integer
i = 18
Dim link As String
Dim section As String
Dim subsectiona As Integer
Dim subsection As String
Dim search As String
Dim rownumber As Integer
section = 0
subsection = 0
subsectiona = 0
Sheets("Headers").Select
Do While Cells(i, 3).Value <> ""
link = Cells(i, 3).Value
section = Cells(i, 1).Value
subsectiona = Cells(i, 2).Value
If subsectiona = 0 Then
subsectiona = "1"
End If
If subsectiona < 10 Then
subsection = "0" & subsectiona
Else
subsection = subsectiona
End If
search = section & "." & subsection
Sheets("Info").Select
rownumber = Range("A:A").Find(search)
Sheets("Headers").Hyperlinks.Add Sheets("Headers").Cells(i, 3), "", Sheets("Info").Cells(rownumber, 1), "", link
i = i + 1
Loop
截至目前它產生的運行時錯誤5碼和ROWNUMBER顯示爲7時應當2. 這裏的頭文件是什麼樣子:
Section Subsection Link Description
7 1 Link Links to 7.01
7 2 Link Links to 7.02
以及info文件:
Section Subsection Type Name Description
7.01 1 Blah Blah Blah
7.01 2 Blah Blah Blah
7.02 1 Blah Blah Blah
因此,從這個詞「鏈接」在頭的小區C2的超鏈接在這種情況下會導致細胞的信息和「鏈接」在小區C3字A2的頭導致信息單元格A4
有什麼不對?
是的,這工作完全謝謝你!要多看一遍,並確保我理解你所說/所做的一切。 – Patman
我很好奇。假設我想對其進行更改,而不是鏈接到該單元格,而是基於「搜索」變量鏈接到表單的過濾版本。我會怎麼做?鏈接到其他解釋也非常好。 – Patman
這是我的想法:超鏈接不能過濾工作表,但超鏈接可以在vba事件中進行,通過該工具可以在vba中的工作表上創建過濾器。 更好的解決方案是以編程方式創建按鈕,該按鈕執行一個函數,該函數根據下拉值對工作表進行排序。 – Archlight