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]Erro em Tempo de Execução "3075"

    darlansandro
    darlansandro
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 138
    Registrado : 03/05/2014

    [Resolvido]Erro em Tempo de Execução "3075" Empty [Resolvido]Erro em Tempo de Execução "3075"

    Mensagem  darlansandro Seg 12 Dez - 10:48

    Olá gente,

    Recentemente postei um código que o Fabio, moderador aqui do forum, ajudou-me a resolver. Entretanto, tenho um problema semelhante com o código abaixo. Preciso que o aplicativo filtre a data inicial e a data final. Para isso usei o "Between", mas ao executar o código sempre apresenta o erro "Erro em Tempo de Execução "3075". Sou autodidata, revisei o código varias vezes e não consegui visualizar o erro. Entendo que já fui auxiliado a pouco tempo, mas agradeço mais este auxilio.

    Código:


    Private Sub btn_visualizar_Click()
    Dim Filtro As String
    Filtro = "Between #" & Me!txt_datainicial & "# AND #" & Me!txt_datafinal & ""


      'abrir report
      If DCount("*", "tblFluxoCaixa", "idCaixaEquivalentesFluxoCaixa=" & Me.txt_caixaseequivalentes.Value & " And filialFluxoCaixa = " & Me.txt_filial.Value & " And dataFluxoCaixa = #" & Filtro & "#") <> 0 Then
     
     
       
        'verificar se preencheu
        If IsNull(Me.txt_filial) Then
            MsgBox "Escolha a filial", vbInformation, ""
            Me.txt_filial.SetFocus
            Exit Sub
        End If
       
        'verificar se preencheu
        If IsNull(Me.txt_datainicial) Then
            MsgBox "Escolha a data inicial.", vbInformation, ""
            Me.txt_datainicial.SetFocus
            Exit Sub
        End If
       
        'verificar se preencheu
        If IsNull(Me.txt_datafinal) Then
            MsgBox "Escolha a data final.", vbInformation, ""
            Me.txt_datafinal.SetFocus
            Exit Sub
        End If
       
          'verificar se preencheu
        If IsNull(Me.txt_caixaseequivalentes) Then
            MsgBox "Escolha o tipo de conta.", vbInformation, ""
            Me.txt_caixaseequivalentes.SetFocus
            Exit Sub
        End If
       
        'Atribuir às variáveis globais os valores
        GBL_Filial = Me.txt_filial.Column(0)
        GBL_Date_Inicial = Me.txt_datainicial
        GBL_Date_Final = Me.txt_datafinal
        GBL_Conciliacao = Me.txt_caixaseequivalentes.Column(0)
       
       
        'fechar form
        DoCmd.Close
       
        'abrir report
        DoCmd.OpenReport "rtlFluxoCaixaConciliacaoFinanceira", acViewPreview
       
        ElseIf DCount("*", "tblFluxoCaixa", "idCaixaEquivalentesFluxoCaixa=" & Me.txt_caixaseequivalentes.Value & " And filialFluxoCaixa = " & Me.txt_filial.Value & " And dataFluxoCaixa = #" & Filtro & "#") = 0 Then
       
        MsgBox "Não há movimentação para a conta informada.", vbInformation, ""
       
        End If
       
     
    End Sub




    [Resolvido]Erro em Tempo de Execução "3075" Vzzr08

    O erro aponta que falta o operador na expressão (& " And dataFluxoCaixa = #" & Filtro & "#"), revisei varias vezes e não identifiquei qual é este operador. Grato pela ajuda.
    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3914
    Registrado : 14/08/2013

    [Resolvido]Erro em Tempo de Execução "3075" Empty Re: [Resolvido]Erro em Tempo de Execução "3075"

    Mensagem  FabioPaes Seg 12 Dez - 16:10

    Amigo, veja na imagem... Esta indo # a mais....

    Se vc informar ele na Variavel Filtro, nao de ve informar ele novamente no SQL...
    Experimente:
    Filtro = "Between #" & Me!txt_datainicial & "# AND #" & Me!txt_datafinal & "#"


    If DCount("*", "tblFluxoCaixa", "idCaixaEquivalentesFluxoCaixa=" & Me.txt_caixaseequivalentes.Value & " And filialFluxoCaixa = " & Me.txt_filial.Value & " And dataFluxoCaixa = " & Filtro & "") <> 0 Then


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!
    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3914
    Registrado : 14/08/2013

    [Resolvido]Erro em Tempo de Execução "3075" Empty Re: [Resolvido]Erro em Tempo de Execução "3075"

    Mensagem  FabioPaes Seg 12 Dez - 16:16

    Outra coisa que nao deve esquecer é que Deve passar a Data Formatada mm/dd/yyyy para nao haver confusao entre o que é dia e o que é mes.

    No formato dd/mm/yyyy nao retornara o período correto.


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!
    darlansandro
    darlansandro
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 138
    Registrado : 03/05/2014

    [Resolvido]Erro em Tempo de Execução "3075" Empty Re: [Resolvido]Erro em Tempo de Execução "3075"

    Mensagem  darlansandro Seg 12 Dez - 16:33

    Olá Fabio,

    Havia tentando desta forma também, mas não funcionou. Abaixo estou postando o link para o download do banco. Quanto ao erro continua apresentando o mesmo erro de anteriormente.

    Tentei de duas maneiras pensando que era o formato da data, mas não funcionou. Abaixo posto os códigos que tentei.

    Código:


    Filtro = "Between #" & Format(Me!txt_datainicial, "dd/mm/yyyy") & "# AND #" & Format(Me!txt_datafinal, "dd/mm/yyyy") & "#"

    Código:

    Filtro = "Between #" & Format(Me!txt_datainicial, "mm/dd/yyyy") & "# AND #" & Format(Me!txt_datafinal, "mm/dd/yyyy") & "#"



    Link: https://1drv.ms/f/s!AgHCWa12NNUWgcosdmovRrkevW8MHA
    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3914
    Registrado : 14/08/2013

    [Resolvido]Erro em Tempo de Execução "3075" Empty Re: [Resolvido]Erro em Tempo de Execução "3075"

    Mensagem  FabioPaes Seg 12 Dez - 18:07

    Atualize para:

    Código:
    Private Sub btn_visualizar_Click()
    Dim Filtro As String
    Filtro = " Between #" & Format(Me!txt_datainicial, "mm/dd/yyyy") & "# AND #" & Format(Me!txt_datafinal, "mm/dd/yyyy") & "#"




      'abrir report
      If DCount("*", "tblFluxoCaixa", "idCaixaEquivalentesFluxoCaixa=" & Me.txt_caixaseequivalentes.Value & " And filialFluxoCaixa = " & Me.txt_filial.Value & " And dataFluxoCaixa" & Filtro & "") <> 0 Then
     
     
       
        'verificar se preencheu
        If IsNull(Me.txt_filial) Then
            MsgBox "Escolha a filial", vbInformation, ""
            Me.txt_filial.SetFocus
            Exit Sub
        End If
       
        'verificar se preencheu
        If IsNull(Me.txt_datainicial) Then
            MsgBox "Escolha a data inicial.", vbInformation, ""
            Me.txt_datainicial.SetFocus
            Exit Sub
        End If
       
        'verificar se preencheu
        If IsNull(Me.txt_datafinal) Then
            MsgBox "Escolha a data final.", vbInformation, ""
            Me.txt_datafinal.SetFocus
            Exit Sub
        End If
       
          'verificar se preencheu
        If IsNull(Me.txt_caixaseequivalentes) Then
            MsgBox "Escolha o tipo de conta.", vbInformation, ""
            Me.txt_caixaseequivalentes.SetFocus
            Exit Sub
        End If
       
        'Atribuir às variáveis globais os valores
        GBL_Filial = Me.txt_filial.Column(0)
        GBL_Date_Inicial = Me.txt_datainicial
        GBL_Date_Final = Me.txt_datafinal
        GBL_Conciliacao = Me.txt_caixaseequivalentes.Column(0)
       
       
        'fechar form
        DoCmd.Close
       
        'abrir report
        DoCmd.OpenReport "rtlFluxoCaixaConciliacaoFinanceira", acViewPreview
       
        ElseIf DCount("*", "tblFluxoCaixa", "idCaixaEquivalentesFluxoCaixa=" & Me.txt_caixaseequivalentes.Value & " And filialFluxoCaixa = " & Me.txt_filial.Value & " And dataFluxoCaixa" & Filtro & "") = 0 Then
       
        MsgBox "Não há movimentação para a conta informada.", vbInformation, ""
       
        End If
       
     
    End Sub

    Foi colocado um Espaço antes do Betwenn e removido o = do quando chamava o valor da variável Filtro...

    Obs: Operador Between nao utiliza o =.


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!
    darlansandro
    darlansandro
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 138
    Registrado : 03/05/2014

    [Resolvido]Erro em Tempo de Execução "3075" Empty Re: [Resolvido]Erro em Tempo de Execução "3075"

    Mensagem  darlansandro Seg 12 Dez - 21:34

    Olá Fabio,

    Obrigado funcionou perfeitamente. O impressionante foi o detalhe o qual você mencionou. Há necessidade de uma boa experiência para visualizar tamanha especificidade. Entendi que o problema estava no sinal de "=". Não sei se seria correto afirmar, mas quando da utilização da expressão do "between" junto a uma consulta deve -se empregar esta mesma didática? Somente o tempo dirá. Agradeço mais uma vez pela boa aula.

    Grato,
    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3914
    Registrado : 14/08/2013

    [Resolvido]Erro em Tempo de Execução "3075" Empty Re: [Resolvido]Erro em Tempo de Execução "3075"

    Mensagem  FabioPaes Seg 12 Dez - 22:34

    O Between sem virá sem o = <>...

    Between Significa Entre .

    Outra coisa importante que estava faltando la era o Espaço antes dele, pois sem ele ficava junto a Instrução SQL

    Select.... WHERE dataFluxoCaixaBetween ....


    Faça um teste, crie uma consulta em modo Grafico, e no Criterio coloque:

    Entre [xxx] e [yyy]
    Mude para modo SQL e vera que ele nao virá com o =.

    Grato pelo retorno e Até a Próxima se Deus quiser!


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!
    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3914
    Registrado : 14/08/2013

    [Resolvido]Erro em Tempo de Execução "3075" Empty Re: [Resolvido]Erro em Tempo de Execução "3075"

    Mensagem  FabioPaes Seg 12 Dez - 22:38

    Outra coisa Importante, a necessidade de Formatar as datas para mm/dd/yyyy.

    Faça um teste, mude para (Filtro = " Between #" & Me!txt_datainicial & "# AND #" & Me!txt_datafinal & "#")
    e Texte buscar nesse Exemplo que postou... Verá que os resultados serão de analizados buscando sempre no formato mm/dd/yyy
    entao se digitar 01/12/2016 (um Dezembro) ele buscará tudo do mes de JANEIRO a partir do dia 12.


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!
    darlansandro
    darlansandro
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 138
    Registrado : 03/05/2014

    [Resolvido]Erro em Tempo de Execução "3075" Empty Re: [Resolvido]Erro em Tempo de Execução "3075"

    Mensagem  darlansandro Ter 13 Dez - 10:56

    Olá Fabio,

    Agradeço mais uma vez a oportunidade de melhorar meu conhecimento. Entendi sua explanação e realizarei o exercício proposto. Peço uma última informação, gostaria de melhorar meu conhecimento no access com vba, você conhece algum curso a distancia ou em Salvador na Bahia para access com vba?

    Grato,
    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3914
    Registrado : 14/08/2013

    [Resolvido]Erro em Tempo de Execução "3075" Empty Re: [Resolvido]Erro em Tempo de Execução "3075"

    Mensagem  FabioPaes Ter 13 Dez - 13:22

    Olha, não conheço nao o...

    Mas recomendo acompanhar os tópicos aqui do Fórum, e também do usandoaccess.com.br pois tem vários materiais muito bons mesmo o...


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!
    darlansandro
    darlansandro
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 138
    Registrado : 03/05/2014

    [Resolvido]Erro em Tempo de Execução "3075" Empty Re: [Resolvido]Erro em Tempo de Execução "3075"

    Mensagem  darlansandro Qua 14 Dez - 0:51

    Obrigado Fabio, vou segui tua sugestão.
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7996
    Registrado : 15/03/2013

    [Resolvido]Erro em Tempo de Execução "3075" Empty Re: [Resolvido]Erro em Tempo de Execução "3075"

    Mensagem  Alvaro Teixeira Qua 14 Dez - 9:28

    Olá amigos, um Pitaco.
    Na instrução Sql para campos tipo data, deve-se colocar entre o Cardinal/cerquilha (#), pois pode estar a data no tipo de dados texto e usar o format à americana:
    # & format(NomeCampo, "mm/dd/yyyy") & #
    Como já foi referido por alguém aqui no fórum, o sql no Access é "muito patriota".
    Abraço

    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3914
    Registrado : 14/08/2013

    [Resolvido]Erro em Tempo de Execução "3075" Empty Re: [Resolvido]Erro em Tempo de Execução "3075"

    Mensagem  FabioPaes Qua 14 Dez - 13:21

    Sim meu amigo, isso mesmo!
    Foi aplicado no Filtro (Filtro = " Between #" & Format(Me!txt_datainicial, "mm/dd/yyyy") & "# AND #" & Format(Me!txt_datafinal, "mm/dd/yyyy") & "#")

    Eu recomendei que ele o fizesse sem apenas como teste para aprendizado...

    Cumprimentos ao Colega!


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7996
    Registrado : 15/03/2013

    [Resolvido]Erro em Tempo de Execução "3075" Empty Re: [Resolvido]Erro em Tempo de Execução "3075"

    Mensagem  Alvaro Teixeira Qua 14 Dez - 15:51

    Olá a todos,
    Fábio, é isso mesmo, quando encontrei um bug numa app minha, nem imagina o tempo que perdi até descobrir.
    Por isso postei.
    Pessoal, não esquecer ao invocar datas que vá passar por uma instrução SQL formatar à americana mm/dd/yyyy

    Darlan, confira tópico abaixo, vale a pena:
    https://www.maximoaccess.com/t13699-curso-de-access-vba-completo
    Abraço a todos Wink
    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3914
    Registrado : 14/08/2013

    [Resolvido]Erro em Tempo de Execução "3075" Empty Re: [Resolvido]Erro em Tempo de Execução "3075"

    Mensagem  FabioPaes Qua 14 Dez - 17:54

    Pessoal, não esquecer ao invocar datas que vá passar por uma instrução SQL formatar à americana mm/dd/yyyy


    Olha, eu tambem bati uma cabeça para perceber  que o problema era a Formatação da data o... Mas depois que aprendi... Nao passo mais sem Formatar...

    Grato por recomendar... Ja add aos Favoritos e irei assistir as Vídeo Aulas...
    https://www.maximoaccess.com/t13699-curso-de-access-vba-completo


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7996
    Registrado : 15/03/2013

    [Resolvido]Erro em Tempo de Execução "3075" Empty Re: [Resolvido]Erro em Tempo de Execução "3075"

    Mensagem  Alvaro Teixeira Qua 14 Dez - 20:27

    Olá Fabio, é muito bom esse curso do Plinio Mabesi.
    Aguardamos o retorno do amigo Darlan.
    Abraço
    darlansandro
    darlansandro
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 138
    Registrado : 03/05/2014

    [Resolvido]Erro em Tempo de Execução "3075" Empty Re: [Resolvido]Erro em Tempo de Execução "3075"

    Mensagem  darlansandro Dom 18 Dez - 18:33

    Obrigado Teixeira,

    Visualizei o link que indicado anteriormente. Tem sido muito proveitoso para melhorá o meu conhecimento. Quanto ao curso do professor Plinio, resolvi finalizar o estudo do link indicado anteriormente, e após o termino do estudo, vou iniciar o curso do professor Plinio.


    Grato,
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7996
    Registrado : 15/03/2013

    [Resolvido]Erro em Tempo de Execução "3075" Empty Re: [Resolvido]Erro em Tempo de Execução "3075"

    Mensagem  Alvaro Teixeira Seg 19 Dez - 1:18

    cheers santa

    Conteúdo patrocinado


    [Resolvido]Erro em Tempo de Execução "3075" Empty Re: [Resolvido]Erro em Tempo de Execução "3075"

    Mensagem  Conteúdo patrocinado


      Data/hora atual: Sex 22 Nov - 1:13