[英]VBA to change Excel cursor for Workbook on Workbook_Open
有什么方法可以更改特定工作簿的Excel光标吗? 找不到任何解决方案。
我的工作簿已锁定,无法编辑单元格,只有某些单元格可用,我想替换此Excel光标:
通过指针:
我已经经历过了,但是不知道是否可以在Workbook中实现它? https://docs.microsoft.com/en-us/office/vba/api/excel.application.cursor
Private Sub Workbook_Open()
Application.Cursor = xlDefault
End Sub
在ThisWorkbook
代码模块中,您可以执行以下操作。 这里的想法是在打开工作簿时捕获初始光标样式( Workbook_Open
事件调用changeCursor
,该事件将当前光标样式存储在cursor
变量中。然后添加更多事件处理程序,以便当工作簿失去焦点时( Workbook_Deactivate
),然后在它关闭( Workbook_BeforeClose
)之前,我们通过resetCursor
方法将该光标恢复到以前的样式。可能还没有考虑其他边缘情况,但这是您需要实现的一般想法。
Option Explicit
Private cursor As Long
Private Sub Workbook_Activate()
changeCursor
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
resetCursor
End Sub
Private Sub Workbook_Deactivate()
resetCursor
End Sub
Private Sub Workbook_Open()
changeCursor
End Sub
Private Sub changeCursor()
cursor = Application.cursor
Application.cursor = xlNorthwestArrow
End Sub
Private Sub resetCursor()
On Error Resume Next
Application.cursor = cursor
If Err.Number <> 0 Then
Application.cursor = xlDefault
End If
End Sub
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.