如何通过将鼠标悬停在单元格上来触发 Excel 宏?

Reg*_*yal 3 vba microsoft-excel

我无法通过将鼠标移到电子表格中的一个或多个单元格上来弄清楚如何运行 Excel 宏。

Rhy*_*son 6

虽然没有正式的 OnMouseOver 事件,但您可以组合一个 VBA hack 来绕过它。它涉及使用 HYPERLINK 功能。还有更多的细节在这里,但在汇总:

如果您创建一个新的 VBA 模块,然后添加一个用户定义的函数来执行您想要的操作:

Public Function OnMouseOver()
 Sheet1.Range("A2").Value = "You hovered over a cell"
End Function
Run Code Online (Sandbox Code Playgroud)

然后您可以通过 HYPERLINK 调用访问它:

=IFERROR(HYPERLINK(OnMouseOver(),"Click here"), "Click here")
Run Code Online (Sandbox Code Playgroud)

请注意,它包含在 IFERROR 中以避免出现 #VALUE!错误消息,因为您的函数不应该更新单元格(但在 HYPERLINK 中调用它时会避开它)。