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


3 participantes

    [Resolvido]Dados no relatório com operação VBA, com base em caixa de combinação

    avatar
    leo.gool
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 42
    Registrado : 27/02/2018

    [Resolvido]Dados no relatório com operação VBA, com base em caixa de combinação Empty [Resolvido]Dados no relatório com operação VBA, com base em caixa de combinação

    Mensagem  leo.gool 27/4/2018, 16:08

    Olá, eu tenho um formulário que obtenho dados à partir de uma instrução VBA, o código é para obter o total de quilômetros percorridos por um veículo, o veículo eu seleciono por caixa de combinação, e os dados aparecem em uma caixa de texto, a função funciona perfeitamente se eu busco obter o valor de km percorrida de todos os veículos, mas não obtenho resultado quando tento filtrar, se alguém puder me ajudar com esse prolema fico grato, segue o código das duas formas, com o filtro e sem o filtro

    Não Funciona
    Sub Combinação2_AfterUpdate()
    Dim strVeiSel As String
    Dim kmc, kms, kmp As Integer
    strVeiSel = Combinação2.Column(0)
    kmc = DSum("[Km Chegada]", "Eventos", "[Veículo/Placa] = '" & strVeiSel & "'")
    kms = DSum("[Km Saída]", "Eventos", "[Veículo/Placa] = '" & strVeiSel & "'")
    Texto0 = kmc - kms
    End Sub

    Funciona
    Sub Combinação2_AfterUpdate()
    Dim strVeiSel As String
    Dim kmc, kms, kmp As Integer
    strVeiSel = Combinação2.Column(0)
    kmc = DSum("[Km Chegada]", "Eventos")
    kms = DSum("[Km Saída]", "Eventos")
    Texto0 = kmc - kms
    End Sub
    wellingtoneo
    wellingtoneo
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 294
    Registrado : 30/07/2012

    [Resolvido]Dados no relatório com operação VBA, com base em caixa de combinação Empty Re: [Resolvido]Dados no relatório com operação VBA, com base em caixa de combinação

    Mensagem  wellingtoneo 27/4/2018, 17:02

    Olá!

    O que tem dentro da variável strVeiSel e do tipo string?

    No aguardo.
    avatar
    leo.gool
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 42
    Registrado : 27/02/2018

    [Resolvido]Dados no relatório com operação VBA, com base em caixa de combinação Empty Re: [Resolvido]Dados no relatório com operação VBA, com base em caixa de combinação

    Mensagem  leo.gool 27/4/2018, 17:08

    Olá, sim
    wellingtoneo
    wellingtoneo
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 294
    Registrado : 30/07/2012

    [Resolvido]Dados no relatório com operação VBA, com base em caixa de combinação Empty Re: [Resolvido]Dados no relatório com operação VBA, com base em caixa de combinação

    Mensagem  wellingtoneo 27/4/2018, 17:47

    Qual mensagem de erro?
    Noobezinho
    Noobezinho
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Dados no relatório com operação VBA, com base em caixa de combinação Empty Re: [Resolvido]Dados no relatório com operação VBA, com base em caixa de combinação

    Mensagem  Noobezinho 27/4/2018, 19:05

    Leonardo

    Vamos falar sério.

    Por quê não colocar nomes nos controle?

    Nome em controles, já nos dá ideia de onde ele vem, evitando

    idas e vindas do formulário pra saber o que é.

    Outra:

    Dim kmc, kms, kmp As Integer

    Na frase acima, kmc e kms são variantes, e somente kmp é integer

    Temos que declarar cada variável:
    Dim kmc As Integer, kms As Integer, kmp As Integer

    Esse nome de campo/controle está errado: [Veículo/Placa]

    Não se usa a barra ( / ) em nome de objetos do Access, ele não aceita.

    Se fizer um teste, ele só irá considerar a primeira palavra(Veiculo).

    Sugiro também que evite utilizar acentos nas palavras, uma hora

    poderá esquecer, e achar o erro vai ser, digamos, difícil.


    Lembrando que:

    strVeiSel = Combinação2.Column(0)

    As colunas de uma caixa de combinação começa do zero (0).

    Verifique se a coluna (0) é realmente a coluna que deseja.

    Acerte o código que não estava funcionado e veja se dá certo.

    Se não, disponibilize as partes envolvidas.

    Sinto falar essa coisas, mas quando nos pegamos exemplos para analisar

    e ajudar, dá vontade de desistir,  por ter que ir atrás dos controles pra saber

    de onde eles vêm.

    Essa é uma das causas, que programador algum, não pega programas feito

    por outros, para consertar, adicionar, o que seja.

    Balem


    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...


    Ajude a ser ajudado:
    Seja objetivo na dúvida, dê os detalhes do que precisa, sem rodeios.
    Quando anexar teu projeto, diga onde está o problema, ganhamos mais tempo
    sem precisar procurar o mesmo.
    avatar
    leo.gool
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 42
    Registrado : 27/02/2018

    [Resolvido]Dados no relatório com operação VBA, com base em caixa de combinação Empty Re: [Resolvido]Dados no relatório com operação VBA, com base em caixa de combinação

    Mensagem  leo.gool 14/5/2018, 13:51

    Desculpe pela demora no retorno, mas consegui resolver meu problema à partir das recomendações, não foi necessário alterar o nome do campo, o problema estava na atribuição de variáveis feita de forma incorreta, e na forma de chamar a variável estava faltando aspas simples, segue o código com algumas alterações que agora está funcionando perfeitamente

    Código:
    kmTotal = DSum("[Km Chegada] - [Km Saída]", "Eventos", "[Veículo/Placa] = '" & Combinação2.Column(1) & "' and [Situação Saída] = 'FINALIZADA'")
        cont = 1
        Do While cont <= 12
            kmpMes(cont) = DSum("[Km Chegada] - [Km Saída]", "Eventos", "[Veículo/Placa] = '" & Combinação2.Column(1) & "' and [Situação Saída] = 'FINALIZADA' and Month([Data Saída]) = '" & cont & "'")
            cont = cont + 1
        Loop

    Conteúdo patrocinado


    [Resolvido]Dados no relatório com operação VBA, com base em caixa de combinação Empty Re: [Resolvido]Dados no relatório com operação VBA, com base em caixa de combinação

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 19/4/2024, 12:15