我想用执行VBA宏的超链接填充一列,这是通过使用HYPERLINK
函数实现的:
=HYPERLINK("#AddReview()";"Add Review")
由于HYPERLINK函数不会调用Workbook_SheetFollowHyperlink
方法,因此我创建了自己的函数,如下所示(简化):
Public Function AddReview()
MsgBox Selection.Cells.Row
End Function
单击超链接后,该函数确实成功执行,但是问题是该函数执行3次,直到第三次运行失败,并显示消息Reference isn't valid
。
有人知道为什么它会继续执行吗?我找不到答案。
答案 0 :(得分:1)
不确定根本原因,但类似于this answer,使用Set AddReview = Selection
可以解决此问题。
Public Function AddReview()
Set AddReview = Selection
MsgBox Selection.Cells.Row
End Function