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]Alterar campos ao carregar formulário

    avatar
    mrjoneskod
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 35
    Registrado : 17/09/2013

    [Resolvido]Alterar campos ao carregar formulário Empty [Resolvido]Alterar campos ao carregar formulário

    Mensagem  mrjoneskod Sex Dez 11, 2015 10:18 am

    Boa tarde amigos.

    Estou tentando atualizar o valor de alguns campos com o seguinte código:
    Código:

    Private Sub Form_Load()
    Dim modcarg As String

    Me.dataSaída = Now
    Me.horaSaída = Now
        
        modcarg = DLookup("tipoVeículo", "modelocarros", "[Modelo] = '" & Me.modeloVeículo.Text & "' ")

        Me.fracao = DLookup("valoHora", "Preços", "[tipoVeículo]= " & modcarg & " ")
        Me.fracaoHora = DLookup("valoHora", "Preços", "[tipoVeículo]= " & modcarg & " ") / 4


    End Sub

    Isso trás a seguinte mensagem de erro:

    Erro de tempo de execução '2185':

    Você não pode fazer referência a uma propriedade ou a um método de um controle, a menos que o controle tenha o foco.

    Porém o mesmo código funciona se o coloco após a alteração de algum campo.
    por exemplo


    Código:
    Private Sub modeloVeículo_AfterUpdate()
        Dim marca As Integer
        Dim tipo As Integer
        Dim modcar As String
        Dim phora As Double
        
        marca = DLookup("Fabricante", "modelocarros", "[Modelo] = '" & Me.modeloVeículo.Text & "' ")
        Me.fabricanteVeículo = marca

        modcar = DLookup("tipoVeículo", "modelocarros", "[Modelo] = '" & Me.modeloVeículo.Text & "' ")
        
        Me.tipoVeículo = modcar
        phora = DLookup("valoHora", "Preços", "[tipoVeículo]= " & modcar & " ")
        
        Me.fracao = DLookup("valoHora", "Preços", "[tipoVeículo]= " & modcar & " ")
        Me.fracaoHora = DLookup("valoHora", "Preços", "[tipoVeículo]= " & modcar & " ") / 4
        
        Form_movimentoSaída.Refresh
        
    End Sub

    Já pesquisei bastante e não consegui respostas.

    Alguma luz?

    Obrigado!
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11026
    Registrado : 04/11/2009

    [Resolvido]Alterar campos ao carregar formulário Empty Re: [Resolvido]Alterar campos ao carregar formulário

    Mensagem  JPaulo Sex Dez 11, 2015 10:25 am

    Ola;

    1º - Tem de alterar o .Text para .Value
    2º - Se a variavel modcarg é string, tem de ter aspas simples no criterio dos segundos DLookup`s

    Teste assim e retorne por favor;

    Código:
        modcarg = DLookup("tipoVeículo", "modelocarros", "[Modelo] = '" & Me.modeloVeículo.Value & "' ")

        Me.fracao = DLookup("valoHora", "Preços", "[tipoVeículo]= '" & modcarg & "'")
        Me.fracaoHora = DLookup("valoHora", "Preços", "[tipoVeículo]= '" & modcarg & "'") / 4


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Alterar campos ao carregar formulário Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Alterar campos ao carregar formulário Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Alterar campos ao carregar formulário Folder_announce_new Instruções SQL como utilizar...
    avatar
    mrjoneskod
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 35
    Registrado : 17/09/2013

    [Resolvido]Alterar campos ao carregar formulário Empty Re: [Resolvido]Alterar campos ao carregar formulário

    Mensagem  mrjoneskod Sex Dez 11, 2015 10:37 am

    Mudou a mensagem de erro,
    Agora a variável modcarg retorna um valor nulo.

    E por isso apresenta a msg, "Uso de Null inválido". Question Question

    O Estranho é que o mesmo algoritmo funciona, dentro de um outro controle, conforme descrevi acima.
    Ou seja a variável, retorna valor válido. scratch

    Obrigado pela ajuda!
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11026
    Registrado : 04/11/2009

    [Resolvido]Alterar campos ao carregar formulário Empty Re: [Resolvido]Alterar campos ao carregar formulário

    Mensagem  JPaulo Sex Dez 11, 2015 10:39 am

    Você mudou de .Text para .Value ?

    O .Text só funciona no evento OnChange (Ao Alterar).


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Alterar campos ao carregar formulário Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Alterar campos ao carregar formulário Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Alterar campos ao carregar formulário Folder_announce_new Instruções SQL como utilizar...
    avatar
    mrjoneskod
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 35
    Registrado : 17/09/2013

    [Resolvido]Alterar campos ao carregar formulário Empty Re: [Resolvido]Alterar campos ao carregar formulário

    Mensagem  mrjoneskod Sex Dez 11, 2015 10:46 am

    Mudei, o problema é que quando mudo pra value, ele tras o código do campo que também é um campo dinâmico e o Dlookup só acha se trouxer o texto do campo.

    É ai que tá o problema, fiz um teste trocando

    Código:
    modcarg = DLookup("tipoVeículo", "modelocarros", "[Modelo] = '" & Me.modeloVeículo.Value & "' ")

    Para

    Código:
    modcarg = DLookup("tipoVeículo", "modelocarros", "[Modelo] = 'focus' ")

    e o modcarg achou o valor correto.

    e tudo funcionou.

    tive que colocar aspas simples nos outros Dlookups, conforme falou.

    Ou seja, eu preciso do valor de text do controle, mas logo ao abrir o formulário, pois é pra buscar os preços e fazer a conta do valor devido logo ao abrir a tela.

    Alguma sugestão?
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11026
    Registrado : 04/11/2009

    [Resolvido]Alterar campos ao carregar formulário Empty Re: [Resolvido]Alterar campos ao carregar formulário

    Mensagem  JPaulo Sex Dez 11, 2015 10:51 am

    Certo, mas para você usar o .Text numa variavel, tem de enviar o foco para o controle que tem o texto;

    A Microsoft diz:
    Para definir ou retornar propriedade de texto de um controle (.Text), o controle deve ter o foco, ou ocorre um erro.
    Para mover o foco para um controle, você pode usar o método SetFocus ou ação IrParaControle.

    Pode tentar;

    Código:
        Me.modeloVeículo.SetFocus
        modcarg = Nz(DLookup("tipoVeículo", "modelocarros", "[Modelo] = '" & Me.modeloVeículo.Text & "'"),"")

    Text Property Reference
    http://msdn.microsoft.com/en-us/library/aa173453.aspx

    Value Property Reference
    http://msdn.microsoft.com/en-us/library/aa173476.aspx


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Alterar campos ao carregar formulário Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Alterar campos ao carregar formulário Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Alterar campos ao carregar formulário Folder_announce_new Instruções SQL como utilizar...
    avatar
    mrjoneskod
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 35
    Registrado : 17/09/2013

    [Resolvido]Alterar campos ao carregar formulário Empty Re: [Resolvido]Alterar campos ao carregar formulário

    Mensagem  mrjoneskod Sex Dez 11, 2015 1:18 pm

    Funcionou perfeitamente essa última opção!

    Obrigado!
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11026
    Registrado : 04/11/2009

    [Resolvido]Alterar campos ao carregar formulário Empty Re: [Resolvido]Alterar campos ao carregar formulário

    Mensagem  JPaulo Sex Dez 11, 2015 3:41 pm

    Fico feliz.

    Obrigado pelo retorno o forum agradece.

    Neste Natal ajude...


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Alterar campos ao carregar formulário Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Alterar campos ao carregar formulário Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Alterar campos ao carregar formulário Folder_announce_new Instruções SQL como utilizar...

    Conteúdo patrocinado


    [Resolvido]Alterar campos ao carregar formulário Empty Re: [Resolvido]Alterar campos ao carregar formulário

    Mensagem  Conteúdo patrocinado


      Data/hora atual: Sex Nov 22, 2024 5:20 am