Любительский кодер снова просит помощи: -)
У меня есть код, который работает хорошо, он получает переменную из выпадающего списка проверки и выполняет команду автоматически, потому что я и использую Private Sub Worksheet_Change(ByVal Target As Range)
,У меня проблема в том, что иногда пользователь вводит текст в поле, а не выбирает его.
Я получаю
ошибку во время выполнения 91
, поскольку он не может найти значение, введенное пользователем.
Как я могу поймать эту ошибку и сделать сообщение всплывающим, чтобы сообщить им, что они должны выбрать из выпадающего списка?А также, поскольку он нарушает код, он устанавливает для моего Application.EnableEvents
значение False
, поскольку он не завершает код из раздела ByVal Target As Range
, который сбрасывается до True
.
Как я могу сбросить Application.EnableEvents
на True
в случае взлома кода?
Sub Copy_From_Borrower_DBase()
Dim myVal As String
Dim sourceRng As Range
myVal = Sheets("Main").Range("F2").Value ' dropdown list
Set sourceRng = Worksheets("Borrower Database").Range("5:5").Find(What:=myVal, LookAt:=xlWhole) 'locate column where to copy from
Worksheets("Main").Range("F5").Value = Worksheets("Borrower Database").Cells(5, sourceRng.Column).Value 'Borrower Name
Worksheets("Main").Range("G6").Value = Worksheets("Borrower Database").Cells(6, sourceRng.Column).Value 'Income
End Sub