单击指向另一个工作表的超链接时运行macros
我有两个工作表。 工作表1具有工作单的列表(A列),工作表2具有根据工作单购买的物料编号列表。 Sheet1中只有一个工单,但可以有多个物料编号链接到一个工单。
Sheet2看起来像这样;
ColumnA ColumnB
订单1物料1
订单1物料2
订单2材料1
Order3材料1
我有一个超链接-vlookup组合,一旦在Sheet1中单击了一个工单号,它就会在Sheet2中列出相同的工单号。
现在,我想在单击超链接后运行macros,以便将Sheet2过滤为仅显示针对该工单所购买的材料。 我尝试了以下哪些不起作用。 请帮忙!
Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink) MsgBox "Run Code" End Sub
你有的问题是FollowHyperlink
不是一个计算超链接(即不是一个静态的超链接,但通过HYPERLINK
函数生成)触发。 你可以通过使用SelectionChange
事件和testing超链接来解决这个问题。 这将需要插入到工作表对象中
Private Sub Worksheet_SelectionChange(ByVal Target As Range) Dim linkAddress As String On Error Resume Next linkAddress = Target.Hyperlinks(1).SubAddress On Error GoTo 0 If linkAddress = vbNullString Then MsgBox "Run Code" End If End Sub
或者在注释中使用我标记为重复的解决scheme