MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access


    Bloquear campos de registros específicos

    avatar
    allexxnunes
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Anónimo
    Mensagens : 36
    Registrado : 11/03/2013

    Bloquear campos de registros específicos Empty Bloquear campos de registros específicos

    Mensagem  allexxnunes 9/12/2013, 16:10

    Tenho um registro para cadastro de projetos. Anualmente novos projetos são cadastrados. Há um campo "ANO"...enfim, preciso de um botão que bloqueie os campos, porém não pode ser te todo o formulário, mas apenas os registros de determinado ano. Por exemplo, no fim do ano 2013 precisaria que ao apertar o botão todos os registros do ano 2013 fiquem bloqueados, mas os demais fiquem editáveis. E no fim de 2014 eu bloquearia os de 2014 ...
    Alguém pode ajudar?
    avatar
    Convidado
    Convidado


    Bloquear campos de registros específicos Empty Re: Bloquear campos de registros específicos

    Mensagem  Convidado 9/12/2013, 16:58

    Olá, tem como postar seu bd ou a parte envolvida no seu pedido de ajuda?
    avatar
    Convidado
    Convidado


    Bloquear campos de registros específicos Empty Re: Bloquear campos de registros específicos

    Mensagem  Convidado 9/12/2013, 19:21

    Tenta lá, primeiro abre um módulo em branco e cola isso e salva o módulo com nome do seu gosto:

    Public Function Desabilita(argFrm As Form)
    Dim ctl As Control
    For Each ctl In argFrm.Controls
    With ctl

    Select Case .ControlType

    Case acTextBox 'Desabilita as Caixas de Texto
    .Enabled = False

    Case acComboBox 'Desabilita as Caixas de combinação
    .Enabled = False

    Case acSubform 'Desabilita Subformulário
    .Enabled = False
    End Select
    End With
    Next ctl
    End Function

    Public Function Habilita(argFrm As Form)
    Dim ctl As Control
    For Each ctl In argFrm.Controls
    With ctl

    Select Case .ControlType

    Case acTextBox 'Habilita as Caixas de Texto
    .Enabled = True

    Case acComboBox 'Habilita as Caixas de combinação
    .Enabled = True

    Case acSubform 'Habilita Subformulário
    .Enabled = True

    End Select
    End With
    Next ctl
    End Function

    no evento atual do formulário isso: Todos os anos anteriores ao atual ficarão com os campos desabilitados.

    If Year(SeuCampoData) < Year(Date) Then
    Call Desabilita(Form_NomeDoSeuFormulário)
    Else
    Call Habilita(Form_NomeDoSeuFormulário)
    End If

    Conteúdo patrocinado


    Bloquear campos de registros específicos Empty Re: Bloquear campos de registros específicos

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 19/4/2024, 04:19