Здравствуйте,
Через проверку данных к ячейкам даются подсказки, таких ячеек на листе много, причем во многих установлены ограничения вводимых значений и выводятся сообщения об ошибках.
Необходимо создать чекбокс в форме (не на листе) при наличии в чекбоксе галки подсказки выводятся, при отсутствии нет.
Что странно, сделав чекбокс на самом листе в 2007 и 2010 екселе все заработало.
Но в форме не работает ни в каком екселе. В чем ошибка?
Используемый код:
Private Sub CheckBox1_Click()
ActiveSheet.Unprotect "111"
If CheckBox1.Value Then
Set rng = Me.Cells.SpecialCells(xlCellTypeAllValidation)
For Each cel In rng.Cells
With cel.Validation
If .InputMessage <> "" Then .ShowInput = True
End With
Next cel
Else
Set rng = Me.Cells.SpecialCells(xlCellTypeAllValidation)
For Each cel In rng.Cells
With cel.Validation
If .InputMessage <> "" Then .ShowInput = False
End With
Next cel
End If
ActiveSheet.Protect "111"
End Sub
Пример во вложении...
Через проверку данных к ячейкам даются подсказки, таких ячеек на листе много, причем во многих установлены ограничения вводимых значений и выводятся сообщения об ошибках.
Необходимо создать чекбокс в форме (не на листе) при наличии в чекбоксе галки подсказки выводятся, при отсутствии нет.
Что странно, сделав чекбокс на самом листе в 2007 и 2010 екселе все заработало.
Но в форме не работает ни в каком екселе. В чем ошибка?
Используемый код:
Private Sub CheckBox1_Click()
ActiveSheet.Unprotect "111"
If CheckBox1.Value Then
Set rng = Me.Cells.SpecialCells(xlCellTypeAllValidation)
For Each cel In rng.Cells
With cel.Validation
If .InputMessage <> "" Then .ShowInput = True
End With
Next cel
Else
Set rng = Me.Cells.SpecialCells(xlCellTypeAllValidation)
For Each cel In rng.Cells
With cel.Validation
If .InputMessage <> "" Then .ShowInput = False
End With
Next cel
End If
ActiveSheet.Protect "111"
End Sub
Пример во вложении...