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

    [Resolvido]Aplicar instrução BackColor, ForeColor e SetFocus com um For

    fernando rodrigo zanchini
    fernando rodrigo zanchini
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 196
    Registrado : 18/04/2018

    [Resolvido]Aplicar instrução BackColor, ForeColor e SetFocus com um For Empty [Resolvido]Aplicar instrução BackColor, ForeColor e SetFocus com um For

    Mensagem  fernando rodrigo zanchini 11/3/2023, 18:30

    Boa tarde pessoal
    Estou tentando fazer função para verificar se existem campos vazios através de Array e  For no botão Salvar
    Campos:
    TxtCidade
    TxtProjeto
    TxtProdutor
    TxtDataEntrega
    TxtPeriodo
     
    Ao clicar no Botão salvar ele vai percorrer os campos através de um For, se existir algum campo sem preencher ele sai e aponta o campo, com BackColor, ForeColor e SetFocus.
    Minha duvida é, como eu aponto o campo através da variável para os comandos BackColor, ForeColor e  SetFocus?

    Function FindOut()
    ReDim ar(5) As Variant 'Arry


    ar(0) = Nz(Me.TxtCidade.Value)
    ar(1) = Nz(Me.TxtProjeto.Value)
    ar(2) = Nz(Me.TxtProdutor.Value)
    ar(3) = Nz(Me.TxtDataEntrega.Value)
    ar(4) = Nz(Me.TxtPeriodo.Value)




    Dim i As Integer
    For i = 0 To 4
        'MsgBox ar(i)
        If ar(i) = "" Then
            MsgBox "Preencha o Campo!", vbInformation, "ATENÇÃO"
            '>>---------> (BackColor)
            '>>---------> (ForeColor)
            '>>---------> (SetFocus)
            Exit Function
        End If
    Next


    End Function


    Sub WarningColor(MyField As Object)
     MyObjectName.BackColor = RGB(0, 0, 156)
     MyObjectName.ForeColor = RGB(250, 250, 0)
    End Sub
    Anexos
    [Resolvido]Aplicar instrução BackColor, ForeColor e SetFocus com um For AttachmentCooperP.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (41 Kb) Baixado 9 vez(es)
    DamascenoJr.
    DamascenoJr.
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3845
    Registrado : 22/11/2016

    [Resolvido]Aplicar instrução BackColor, ForeColor e SetFocus com um For Empty Re: [Resolvido]Aplicar instrução BackColor, ForeColor e SetFocus com um For

    Mensagem  DamascenoJr. 11/3/2023, 19:56

    Código:
    Function FindOut()
    ReDim ar(5) As Variant 'Arry
    Dim i As byte 'alterei o tipo, afinal, byte se encaixa melhor já que nunca haverá mais de vai até 255 campos (integer vai até 32000)

    'salvando o nome dos campos ao invés do valor, assim poderei saber o nome do santo, ao invés de só o milagre
    ar(0) = "TxtCidade"
    ar(1) = "TxtProjeto"
    ar(2) = "TxtProdutor"
    ar(3) = "TxtDataEntrega"
    ar(4) = "TxtPeriodo"

    'uma ideia é ter outro loop aqui que reseta a formatação de todos os campos para o normal
    'e só depois, conforme abaixo, o loop que muda a formatação

    'loop pela matriz
    For i = 0 To 4
        'MsgBox ar(i)
        'verificando o valor conforme o nome do campo
        If nz(me(ar(i)).value) = "" Then
            MsgBox "Preencha o Campo " & ar(i) & "!", vbInformation, "ATENÇÃO"
            me(ar(i)).backcolor = vbyellow
            me(ar(i)).forecolor = vbred
            me(ar(i)).setfocus
            Exit Function
        else
            me(ar(i)).backcolor = suacornormal
            me(ar(i)).forecolor = suacornormal
        End If
    Next


    End Function


    .................................................................................
    Ajude-se a ser ajudado, anexe seu projeto.
    Sempre tente entender o código,
    não somente copie e cole.
    Positive as mensagens que achar útil clicando no '+' no canto superior direito delas.

    fernando rodrigo zanchini gosta desta mensagem

    fernando rodrigo zanchini
    fernando rodrigo zanchini
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 196
    Registrado : 18/04/2018

    [Resolvido]Aplicar instrução BackColor, ForeColor e SetFocus com um For Empty Re: [Resolvido]Aplicar instrução BackColor, ForeColor e SetFocus com um For

    Mensagem  fernando rodrigo zanchini 14/3/2023, 22:24

    Deu Certo Abrigado  cheers cheers cheers cheers cheers
    DamascenoJr.
    DamascenoJr.
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3845
    Registrado : 22/11/2016

    [Resolvido]Aplicar instrução BackColor, ForeColor e SetFocus com um For Empty Re: [Resolvido]Aplicar instrução BackColor, ForeColor e SetFocus com um For

    Mensagem  DamascenoJr. 15/3/2023, 00:38

    O fórum agradece o retorno. Sucesso.


    .................................................................................
    Ajude-se a ser ajudado, anexe seu projeto.
    Sempre tente entender o código,
    não somente copie e cole.
    Positive as mensagens que achar útil clicando no '+' no canto superior direito delas.

    Conteúdo patrocinado


    [Resolvido]Aplicar instrução BackColor, ForeColor e SetFocus com um For Empty Re: [Resolvido]Aplicar instrução BackColor, ForeColor e SetFocus com um For

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 28/4/2024, 14:26