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


2 participantes

    Função Bloqueia Campos (argumento para Select Case)

    avatar
    rgondim
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 229
    Registrado : 24/02/2012

    Função Bloqueia Campos (argumento para Select Case) Empty Função Bloqueia Campos (argumento para Select Case)

    Mensagem  rgondim 9/12/2012, 19:10

    Boa tarde ao Fórum!

    Eu utilizo uma função chamada bloqueiaCampos num módulo global. Gostaria de torná-la mais flexível e definir quando ela é chamada que marcas(tag) serão acionadas para bloquear campos.
    Pensei num argumento string (strMarca), mas só funciona se eu por apenas um número.
    Exemplo:
    Call bloqueiaCampos(Me, "1")
    Caso eu ponha mais de um número não bloqueia os campos.
    Call bloqueiaCampos(Me, "1,2")
    Acho que o problema é porque os argumentos em Case são numéricos...


    Código:
    Function bloqueiaCampos(frm As Form, strMarca As String)
        'Função para bloquear campos do formulário
        Dim ctl As Control
        'Campos com a marca 1 recebem a função.
       
        For Each ctl In frm.Controls
            Select Case ctl.Tag
                Case strMarca
                    If frm.Tipo = False Then
                        ctl.Enabled = False
                    Else
                        ctl.Enabled = True
                    End If
            End Select
        Next ctl
    End Function
    Cláudio Más
    Cláudio Más
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1314
    Registrado : 21/01/2012

    Função Bloqueia Campos (argumento para Select Case) Empty Re: Função Bloqueia Campos (argumento para Select Case)

    Mensagem  Cláudio Más 9/12/2012, 22:40

    Boa noite,

    Se eu entendi bem, pode ser isso:

    Código:
    For Each ctl In frm.Controls
       
        If InStr(strMarca, ctl.Tag) > 0 Then
            If frm.Tipo = False Then
                ctl.Enabled = False
            Else
                ctl.Enabled = True
            End If
        End If
       
    Next ctl

      Data/hora atual: 21/11/2024, 20:34