0
我有一個工作表,其中數據表的每一行都有基於公式的超鏈接。我希望這些超鏈接在每次單擊其中一個時執行宏。該宏需要一個參數,以取決於哪個行的超鏈接被點擊而採取不同的行爲,所以爲此我使用了活動單元格的行號。單擊超鏈接時執行宏
我嘗試了各種方式找到,但沒有一個完成功能。在大多數情況下,我需要在事件宏本身中指定單元地址,這不是一個可伸縮的選項。
示例數據:
Col A Col B
A Link: A
B Link: B
C Link: C
D Link: D
E Link: E
在上表中的第二列應爲超鏈接的列表。
我正在使用第二列中的超鏈接式(在例如,小區B1):
=HYPERLINK(MID(CELL("filename"),FIND("[",CELL("filename")),FIND("]",CELL("filename"))-FIND("[",CELL("filename"))+1)&ADDRESS(ROW(),COLUMN()-1),"Link: "&$A1)
我使用在工作表中的代碼的宏:
Private Sub Workbook_SheetFollowHyperlink(ByVal Target As Hyperlink)
Dim sData As String
sData = "text: " & sData & Range(Target.Range.Address). _
Offset(0, -1).Value & vbCr
MsgBox sData
End Sub
對於我在這種情況下,當我單擊超鏈接時,上述宏甚至沒有運行
仍然不起作用。我嘗試只在msgbox行在子,但看起來像點擊鏈接也沒有激活msgbox – dsauce
超鏈接是否打開另一個工作簿? –
該超鏈接針對左列中的相應單元格。其實我並不關心超鏈接,而只是想在鼠標單擊單元格時執行宏,因此超鏈接可以指向任何地方。我已經有一個宏,它在單元格被選中時運行。 – dsauce