Estou com um problema na execução de um código que faz com que todos os campos (combos e tudo mais) sejam desabilitadas do formulário. O código funciona bem, mas ele desabilita todos os registros contidos no formulário e eu preciso desabilitar um registro específico. Pelo que eu entendi, eu deveria colocar este código no evento "No atual" do formulário e então criar um botão permitindo a edição dos dados, contudo eu quero dar a possibilidade de desativar e reativar o registro ao usuário através de dois botões "Desativar CN" e "Reativar CN". Como faço para funcionar deste jeito? Abaixo estão os códigos que utilizei:
Para desativar:
Private Sub Desativar_CN_Click()
If MsgBox("Deseja realmente desativar CN?", vbYesNo) = vbNo Then Cancel = True
Dim ctl As Control
Dim StrName As String
For Each ctl In Me.Controls
Select Case ctl.ControlType
Case acTextBox, acComboBox, acListBox, acOptionGroup, acCheckBox
StrName = ctl.Name
Me(StrName).Enabled = False
End Select
Next ctl
End Sub
Para reativar:
Private Sub Reativar_CN_Click()
If MsgBox("Deseja realmente reativar CN?", vbYesNo) = vbNo Then Cancel = True
Dim ctl As Control
Dim StrName As String
For Each ctl In Me.Controls
Select Case ctl.ControlType
Case acTextBox, acComboBox, acListBox, acOptionGroup, acCheckBox
StrName = ctl.Name
Me(StrName).Enabled = True
End Select
Next ctl
End Sub
Obrigado pela atenção pessoal, este fórum tem me ajudado muito!
PS: Esta foi a minha fonte inicial para a construção do código: http://maximoaccess.forumeiros.com/t8631-resolvidobloquear-todos-os-campos-do-formulario-e-botao-editar