Как сделать всплывающее предупреждение при выборе конкретной ячейки - PullRequest
1 голос
/ 27 мая 2019

Я пытаюсь кодировать в VBA для создания всплывающего оповещения при выборе конкретной ячейки, это похоже на пропущенное обязательное поле, необходимо отображать оповещение для пропущенной ячейки при переходе в следующую ячейку

Sub macro1(ByVal Target As Range)
If Range("F3").Value = "NWOO" Then
    If Not Intersect(Target, Range("E4:F4")) Is Nothing Then
        MsgBox "You have missed a cell " & Target.Address & vbCrLf & "Please input a number", vbInformation, "Kutools for Excel"
' Macro1 Macro
' Keyboard Shortcut: Ctrl+z
End If
End Sub

1 Ответ

1 голос
/ 27 мая 2019

Ты близко, код хороший.Однако вам нужно кодировать событие SelectionChange, которое будет срабатывать при изменении выбора диапазона листа.

Поместите подпункт ниже в модуль вашего листа:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

If Range("F3").Value = "NWOO" Then
    If Not Intersect(Target, Range("E4:F4")) Is Nothing Then
        MsgBox "You have missed a cell " & Target.Address & vbCrLf & "Please input a number", vbInformation, "Kutools for Excel"
    End If
' Keyboard Shortcut: Ctrl+z
End If

End Sub

Для сочетания клавиш вывероятно, будет лучше использовать Application.Undo , чем использовать SendKeys .SendKeys могут быть очень ненадежными.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...