Мне нужно выполнить некоторую проверку ошибок, чтобы пользователь знал, что он пропустил некоторую информацию перед отправкой формы.
У меня есть таблица, которая управляется раскрывающимся списком Проверка данных.Это поле имеет номера от 1 до 15 и будет отображать / скрывать строки, связанные с выбранным номером, т.е. 3 выбранными, поэтому отображаются строки с 1 по 3, с 4 по 15 или скрытые.То, что должен делать код проверки ошибок, это проверить выбранный номер списка, затем проверить ячейку в каждой строке, чтобы увидеть, если она пуста или нет, если пусто, отобразить сообщение об ошибке, если нет, то ничего не делать.Мне нужно, чтобы это сообщение об ошибке отображалось для каждой отображаемой строки, а не для скрытых строк.У меня есть ячейка вверху страницы с информацией о том, сколько ошибок у них есть, поэтому я не хочу, чтобы скрытые строки добавлялись к этому количеству.Я могу заставить это работать для чисел ноль и 1, но для 2 - 15 это не работает.В приведенном ниже коде показаны только цифры от 0 до 3, я могу изменить код для других строк, как только сработает.
Правильный результат при выборе nbr 3 D63 пусто, поэтому сообщение об ошибке в A63, D64: 65 не пусто, поэтому нетошибка msg ![Error](https://i.stack.imgur.com/XHgm2.png)
Фактический результат при выборе Nbr 3 D63: 65 пусто, поэтому A63: 65 должно отображать ошибку msg ![Outcome](https://i.stack.imgur.com/pGPxO.png)
Sub Check_SRU_Table()
' SRU 0 ** WORKING **
If Range("SRUAdd").Value = "0" Then
Range("Sig_1").Value = "Signature Release 1"
Range("Sig_2").Value = "Signature Release 2"
Range("Sig_3").Value = "Signature Release 3"
' 4 TO 15 OMITTED
End If
' SRU 1 ** WORKING **
If Range("SRUAdd").Value = "1" Then
If Range("SRUName1").Value = "" Then
Range("Sig_1").Value = "Signature Release 1 - ERROR"
Else
Range("Sig_1").Value = "Signature Release 1"
End If
End If
' SRU 2 ** NOT WORKING **
If Range("SRUAdd").Value = "2" Then
If Range("SRUName1").Value = "" Then
Range("Sig_1").Value = "Signature Release 1 - ERROR"
ElseIf Range("SRUName2").Value = "" Then
Range("Sig_2").Value = "Signature Release 2 - ERROR"
Else
Range("Sig_1").Value = "Signature Release 1"
Range("Sig_2").Value = "Signature Release 2"
End If
End If
' SRU 3 ** NOT WORKING **
If Range("SRUAdd").Value = "3" Then
If Range("SRUName1").Value = "" Then
Range("Sig_1").Value = "Signature Release 1 - ERROR"
ElseIf Range("SRUName2").Value = "" Then
Range("Sig_2").Value = "Signature Release 2 - ERROR"
ElseIf Range("SRUName3").Value = "" Then
Range("Sig_3").Value = "Signature Release 3 - ERROR"
Else
Range("Sig_1").Value = "Signature Release 1"
Range("Sig_2").Value = "Signature Release 2"
Range("Sig_3").Value = "Signature Release 3"
End If
End If
End Sub
Private Sub BtnCheck_Click()
Check_SRU_Table
End Sub
Любая помощь, чтобы выяснить, где я иду не так, будет очень признательна.