Olá esta é minha primeira contribuição.
Para bloquear basta chamar a sub Bloqueia_ctl com o nome do formulário.
Quando não quiser que um determinado campo seja bloqueado,basta definir a TAG "não bloqueia"
Para liberar basta chamar a sub Libera_ctl com o nome do formulário.
*********************************
* Davidson Gonçalves Ogleari
*********************************
Public Sub Bloqueia_ctl(frm As Form)
Dim ctl As Control
' Enumera coleção Controls.
For Each ctl In frm.Controls
' Verifica se o controle é caixa de texto.
If ctl.ControlType = acTextBox Then GoSub Define_Propriedade
If ctl.ControlType = acComboBox Then GoSub Define_Propriedade
If ctl.ControlType = acSubform Then Bloqueia_ctl ctl.Form
Next ctl
Exit Sub
Define_Propriedade:
' Define propriedades do controle.
With ctl
If .Tag <> "não bloqueia" Then
.Locked = True
.BackColor = 16777215
'.Enabled = False
End If
End With
Return
End Sub
Sub Libera_ctl(frm As Form)
Dim ctl As Control
' Enumera coleção Controls.
For Each ctl In frm.Controls
' Verifica se o controle é caixa de texto.
If ctl.ControlType = acTextBox Then GoSub Define_Propriedade
If ctl.ControlType = acComboBox Then GoSub Define_Propriedade
If ctl.ControlType = acSubform Then Libera_ctl ctl.Form
Next ctl
Exit Sub
Define_Propriedade:
' Define propriedades do controle.
With ctl
If .Tag <> "não bloqueia" Then
.Locked = False
.BackColor = 8454016
'.Enabled = True
End If
End With
Return
End Sub
Para bloquear basta chamar a sub Bloqueia_ctl com o nome do formulário.
Quando não quiser que um determinado campo seja bloqueado,basta definir a TAG "não bloqueia"
Para liberar basta chamar a sub Libera_ctl com o nome do formulário.
*********************************
* Davidson Gonçalves Ogleari
*********************************
Public Sub Bloqueia_ctl(frm As Form)
Dim ctl As Control
' Enumera coleção Controls.
For Each ctl In frm.Controls
' Verifica se o controle é caixa de texto.
If ctl.ControlType = acTextBox Then GoSub Define_Propriedade
If ctl.ControlType = acComboBox Then GoSub Define_Propriedade
If ctl.ControlType = acSubform Then Bloqueia_ctl ctl.Form
Next ctl
Exit Sub
Define_Propriedade:
' Define propriedades do controle.
With ctl
If .Tag <> "não bloqueia" Then
.Locked = True
.BackColor = 16777215
'.Enabled = False
End If
End With
Return
End Sub
Sub Libera_ctl(frm As Form)
Dim ctl As Control
' Enumera coleção Controls.
For Each ctl In frm.Controls
' Verifica se o controle é caixa de texto.
If ctl.ControlType = acTextBox Then GoSub Define_Propriedade
If ctl.ControlType = acComboBox Then GoSub Define_Propriedade
If ctl.ControlType = acSubform Then Libera_ctl ctl.Form
Next ctl
Exit Sub
Define_Propriedade:
' Define propriedades do controle.
With ctl
If .Tag <> "não bloqueia" Then
.Locked = False
.BackColor = 8454016
'.Enabled = True
End If
End With
Return
End Sub