MaximoAccess

Caro Usuário, não tire as suas duvidas nas Salas de Repositório, abra sempre um novo tópico relacionado, nas salas destinadas para o efeito, como Sala de Tabelas, Consultas, Formulários, Relatórios, Macros, Módulos e VBA.

Obrigado

Administração do MaximoAccess

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

    Definir valor padrão de campo do formulário com VBA

    Compartilhe

    marcelobb
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 7
    Registrado : 16/10/2014

    Definir valor padrão de campo do formulário com VBA

    Mensagem  marcelobb em Qua 29 Out 2014, 20:19

    Pessoal,

    Estou com um problema.

    Preciso definir um valor padrão de um formulário com base em um Dlookup, porém não está funcionando.

    Meu comando Dlookup funciona perfeitamente trazendo o valor da variável que eu desejo (testei com um msgbox para sair o valor do strg1 e está ok).

    Aí no evento abrir o formulário onde o valor default do campo TIPO_PLANO deve receber o valor de strg1 eu coloquei o seguinte:

    Dim strg1 As String

    strg1 = DLookup("[TIPO_PLANO]", "[T_ATAC_PLANO1]", "[NOME_PLANO]='" & Forms!F_ATAC!SUB_PLANOS.Form!combPLANO & "' And [GRUPO_ECONOMICO] = '" & Forms!F_ATAC!SUB_PLANOS.Form!GrupoEconomico1 & "'")

    Me.TIPO_PLANO.DefaultValue = strg1

    .....
    Porém não funciona de jeito nenhum.

    Se eu pegar este mesmo comando DLookup e criar no evento após atualizar de outro campo qualquer daquele formulário, o valor do campo TIPO_PLANO recebe o valor correto.

    Acho que o problema está no fato de que o default value só funciona se houver algum preenchimento no formulário que é de entrada de dados.

    Alguma sugestão?

    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2483
    Registrado : 29/06/2012

    Re: Definir valor padrão de campo do formulário com VBA

    Mensagem  Noobezinho em Qua 29 Out 2014, 23:42

    Olá Marcelo

    Experimente:
    Colocar o código no Evento AoReceberFoco do formulário.

    Caso também não funfe, coloque no evento AoAlterar da primeira caixa de texto que será preenchida.

    Nb


    .................................................................................
    Noobezinho

    * A solução funcionou?  [Você precisa estar registrado e conectado para ver esta imagem.] 
    Agradeça e feche o tópico clicando no botão Resolvido
    Se não sabe como, veja [Você precisa estar registrado e conectado para ver este link.].

    Como anexar imagem no teu post do fórum : [Você precisa estar registrado e conectado para ver este link.]

    * Criar arquivos.zip com o Winrar - veja [Você precisa estar registrado e conectado para ver este link.].

    Atualmente estou verificando se quem está pedindo ajuda, ajudamos e não retornou.
    Se a pessoa em questão não deu retorno, não tentarei ajudar novamente .

    marcelobb
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 7
    Registrado : 16/10/2014

    Re: Definir valor padrão de campo do formulário com VBA

    Mensagem  marcelobb em Sex 31 Out 2014, 17:46

    Pois é.... eu havia tentado nos dois eventos.

    No evento ao receber foco não funciona.

    Funciona apenas no evento ao alterar de uma caixa de texto.

    O problema é que eu precisa que o usuário estivesse vendo o valor default daquele campo antes mesmo de começar a preencher qualquer outro campo.

    Logo esta solução não me atende, pois obriga ao usuário finalizar um preenchimento sem ver o valor default do campo TIPO_PLANO.


    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2483
    Registrado : 29/06/2012

    Re: Definir valor padrão de campo do formulário com VBA

    Mensagem  Noobezinho em Sex 31 Out 2014, 18:33

    Marcelo

    Experimente:

    Copie e cole a função abaixo num modulo.

    Function VPadrao() as String
    Dim strg1 As String

    strg1 = DLookup("[TIPO_PLANO]", "[T_ATAC_PLANO1]", "[NOME_PLANO]='" & Forms!F_ATAC!SUB_PLANOS.Form!combPLANO & "' And [GRUPO_ECONOMICO] = '" & Forms!F_ATAC!SUB_PLANOS.Form!GrupoEconomico1 & "'")

    Vpadrao = strg1
    End Function


    Na propriedade Valor padrão na folha de propriedade coloque:

    Me.TIPO_PLANO.DefaultValue = VPadrao

    Teste Wink

    Noob


    .................................................................................
    Noobezinho

    * A solução funcionou?  [Você precisa estar registrado e conectado para ver esta imagem.] 
    Agradeça e feche o tópico clicando no botão Resolvido
    Se não sabe como, veja [Você precisa estar registrado e conectado para ver este link.].

    Como anexar imagem no teu post do fórum : [Você precisa estar registrado e conectado para ver este link.]

    * Criar arquivos.zip com o Winrar - veja [Você precisa estar registrado e conectado para ver este link.].

    Atualmente estou verificando se quem está pedindo ajuda, ajudamos e não retornou.
    Se a pessoa em questão não deu retorno, não tentarei ajudar novamente .

      Data/hora atual: Sab 03 Dez 2016, 02:25