Как ввести сообщение проверки в ячейку из текстового поля в пользовательской форме? - PullRequest
0 голосов
/ 19 июня 2019

Я делаю форму ввода данных для анализа проб.

Для 1 теста есть несколько критериев. Таким образом, я планирую создать всплывающее сообщение для проверки информации, введенной из текстового поля.

Первоначально это работает, но через некоторое время появляется сообщение об ошибке 1004, и в выбранной ячейке не появляется всплывающее сообщение проверки.

If Userform.CheckBox2.Value = True Then
ActiveCell.Offset(J, 19).Interior.Color = vbYellow
With ActiveCell.Offset(J, 19).Validation
 .Add Type:=xlValidateInputOnly
 .InputTitle = "additional info"
 .InputMessage = Userform.TextBox9.Text
End With
End If

Первоначально, когда этот код работает, когда я ввожу данные в текстовое поле 9, активная ячейка выделяется, и при выборе ячейки появляется всплывающее сообщение.

Теперь активная ячейка по-прежнему выделяется, но для получения дополнительной информации не появляется всплывающее сообщение.

Не знаю, почему в прошлый раз это работало, а сейчас - нет.

1 Ответ

1 голос
/ 19 июня 2019

Эта ошибка появляется при попытке установить проверку для ячейки, которая уже имеет проверку.

Простое удаление существующей проверки (с методом .Delete) перед установкой предотвратит ошибку 1004:

With ActiveCell.Offset(J, 19).Validation
    .Delete
    .Add Type:=xlValidateInputOnly
    .InputTitle = "additional info"
    .InputMessage = Userform.TextBox9.Text
End With
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...