区分超链接处理程序代码中的超链接
Differentiating between hyperlinks in the code of hyperlink handler
如何在以下代码中引用名为 delete 而不是其他名称不同的特定超链接:
Private Sub Workbook_SheetFollowHyperlink(ByVal sh As Object, ByVal Target As Hyperlink)
Range(ActiveCell.Address).Name = "Delete"
MsgBox ("Activated - Workbook_SheetFollowHyperlink - before IF-ELSE")
If Range(ActiveCell.AddressLocal).Text = "Delete" Then
ClearThatCell 'Calling ClearThatCell sub
Else
MsgBox ("It's regular link - NOT DELETE ")
End If
End Sub
'This SUB is clearing the selected cell
Sub ClearThatCell()
ActiveCell.Clear
MsgBox ("The cell is cleared!")
End Sub
Sub Workbook_SheetDeactivate(ByVal sh As Object)
LastSheet = sh.Name
End Sub
以上代码是超链接的处理程序,但我希望仅当在父工作簿中单击 "Delete" 超链接时才使用此代码。
感谢所有试图提供帮助的人!
我猜哪个工作表的事件启动 Workbook_SheetFollowHyperlink event 宏并不重要。
Private Sub Workbook_SheetFollowHyperlink(ByVal sh As Object, ByVal Target As Hyperlink)
If LCase(Target.Name) = "delete" Then
ClearThatCell sh, Target.Range 'Calling ClearThatCell sub
End If
End Sub
Sub ClearThatCell(ws As Worksheet, rng As Range)
MsgBox "The " & rng.Address(0, 0) & " cell on " & ws.Name & " was clicked."
End Sub
查看 Hyperlink object and Hyperlink members 的文档,了解您还可以使用超链接做什么。
Private Sub Workbook_SheetFollowHyperlink(ByVal Sh As Object, ByVal Target As Hyperlink)
If Target.TextToDisplay = "Delete" Then
Debug.Print "deleting"
'do stuff
End If
End Sub
如何在以下代码中引用名为 delete 而不是其他名称不同的特定超链接:
Private Sub Workbook_SheetFollowHyperlink(ByVal sh As Object, ByVal Target As Hyperlink)
Range(ActiveCell.Address).Name = "Delete"
MsgBox ("Activated - Workbook_SheetFollowHyperlink - before IF-ELSE")
If Range(ActiveCell.AddressLocal).Text = "Delete" Then
ClearThatCell 'Calling ClearThatCell sub
Else
MsgBox ("It's regular link - NOT DELETE ")
End If
End Sub
'This SUB is clearing the selected cell
Sub ClearThatCell()
ActiveCell.Clear
MsgBox ("The cell is cleared!")
End Sub
Sub Workbook_SheetDeactivate(ByVal sh As Object)
LastSheet = sh.Name
End Sub
以上代码是超链接的处理程序,但我希望仅当在父工作簿中单击 "Delete" 超链接时才使用此代码。 感谢所有试图提供帮助的人!
我猜哪个工作表的事件启动 Workbook_SheetFollowHyperlink event 宏并不重要。
Private Sub Workbook_SheetFollowHyperlink(ByVal sh As Object, ByVal Target As Hyperlink)
If LCase(Target.Name) = "delete" Then
ClearThatCell sh, Target.Range 'Calling ClearThatCell sub
End If
End Sub
Sub ClearThatCell(ws As Worksheet, rng As Range)
MsgBox "The " & rng.Address(0, 0) & " cell on " & ws.Name & " was clicked."
End Sub
查看 Hyperlink object and Hyperlink members 的文档,了解您还可以使用超链接做什么。
Private Sub Workbook_SheetFollowHyperlink(ByVal Sh As Object, ByVal Target As Hyperlink)
If Target.TextToDisplay = "Delete" Then
Debug.Print "deleting"
'do stuff
End If
End Sub