В ThisWorkbook
модуле кода вы можете сделать что-то вроде этого. Идея заключается в том, что мы фиксируем начальный стиль курсора при открытии рабочей книги (событие Workbook_Open
вызывает changeCursor
, в котором текущий стиль курсора сохраняется в переменной cursor
. Затем мы добавляем еще несколько обработчиков событий, чтобы при книга теряет фокус (Workbook_Deactivate
) и перед закрытием (Workbook_BeforeClose
) мы восстанавливаем этот курсор в прежнем стиле с помощью метода * 1007. * Могут быть дополнительные крайние случаи, которые я не рассматривал, но это Общая идея, которую вам нужно реализовать.
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