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]Atualização de consulta por trimestre

    filhopqd
    filhopqd
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 27
    Registrado : 26/12/2011

    [Resolvido]Atualização de consulta por trimestre Empty Atualização de consulta por trimestre

    Mensagem  filhopqd 2/2/2013, 13:00

    Bom dia todos Exclamation
    Estou tentando atualizar uma tabela de acordo com as funções abaixo.

    Function primeiroDiaTrimestre1() As Date
    primeiroDiaTrimestre1 = CDate("01/01/" & Year(Date))
    End Function
    Function ultimoDiaTrimestre1() As Date
    ultimoDiaTrimestre1 = CDate("31/03/" & Year(Date))
    End Function

    'ATUALIZANDO DADOS 1º TRIMESTRE
    Private Sub Comando8_Click()
    Dim inicioTrim1, fimTrim1 As Date
    inicioTrim1 = primeiroDiaTrimestre1
    fimTrim1 = ultimoDiaTrimestre1
    DoCmd.SetWarnings False

    'Desta Forma atualiza o campo SltEqp da tabela Dados normalmente

    DoCmd.RunSQL "UPDATE Dados SET Dados.EqpT1 = Dados!SltEqp WHERE ((([Dados]![SltEqp]) Between #01/01/2013# And# 31/03/2013#));"

    'Mais que queria inserir os dados da função para que o ano fique automático de acordo o ano atual, alterei para a forma abaixo mais não está dando certo.

    DoCmd.RunSQL "UPDATE Dados SET Dados.EqpT1 = Dados!SltEqp WHERE ((([Dados]![SltEqp]) Between inicioTrim1 And fimTrim1));"

    Desde já agradeço!
    criquio
    criquio
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 11229
    Registrado : 30/12/2009

    [Resolvido]Atualização de consulta por trimestre Empty Re: [Resolvido]Atualização de consulta por trimestre

    Mensagem  criquio 2/2/2013, 15:22

    Se a intenção é utilizar os trimestres do ano atual, poderia colocar uma combo para selecionar os trimestres de 1 a 4 e rodar a SQL mais ou menos assim:

    Código:
    DoCmd.RunSQL "UPDATE Dados SET Dados.EqpT1 = Dados!SltEqp WHERE [Dados]![SltEqp] Between #01 & "/" & Me.NomeDaCombo.Value & "/" Year(Date) And # & DateSerial(Year(Date()), Month(Date()) + 1, 0) & "/" & Me.NomeDaCombo.Value + 3 & "/" Year(Date);"
    É mais ou menos assim, genericamente falando. Tente adaptar.


    .................................................................................
    Meu novo site: www.vcssistemas.com.br

    Clique aqui e veja um vídeo que explica como fazer pesquisas no forum.


    DICA: Quando precisar inserir um exemplo do seu aplicativo, siga os procedimentos abaixo:
    1 - faça uma cópia do aplicativo
    2 - retire tudo que não for necessário à solução do problema, exceto o que o aplicativo precisar para funcionar
    3 - use o Compactar/Reparar
    4 - compacte o aplicativo em zip ou rar (zip para postagem como anexo na mensagem)


    Agradeça a quem lhe ajudou, clicando no joinha de uma das mensagens do usuário.
    Positive as mensagens que achar útil, no canto superior direito delas.

    filhopqd
    filhopqd
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 27
    Registrado : 26/12/2011

    [Resolvido]Atualização de consulta por trimestre Empty Re: [Resolvido]Atualização de consulta por trimestre

    Mensagem  filhopqd 2/2/2013, 21:17

    Obrigado Criquio!
    Mais a intenção é ao clicar no Botão, atualizar os 4 trimestres ao mesmo tempo utilizando a função para cada trimestre, sem precisar selecionar o trimestre, tem como fazer isso Question
    Desde já agradeço.
    criquio
    criquio
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 11229
    Registrado : 30/12/2009

    [Resolvido]Atualização de consulta por trimestre Empty Re: [Resolvido]Atualização de consulta por trimestre

    Mensagem  criquio 2/2/2013, 21:41

    O que exatamente precisa atualizar e como precisa atualizar? Se é para os quatro trimestres, não seria o caso de se colocar quatro SQLs sendo uma para cada trimestre?


    .................................................................................
    Meu novo site: www.vcssistemas.com.br

    Clique aqui e veja um vídeo que explica como fazer pesquisas no forum.


    DICA: Quando precisar inserir um exemplo do seu aplicativo, siga os procedimentos abaixo:
    1 - faça uma cópia do aplicativo
    2 - retire tudo que não for necessário à solução do problema, exceto o que o aplicativo precisar para funcionar
    3 - use o Compactar/Reparar
    4 - compacte o aplicativo em zip ou rar (zip para postagem como anexo na mensagem)


    Agradeça a quem lhe ajudou, clicando no joinha de uma das mensagens do usuário.
    Positive as mensagens que achar útil, no canto superior direito delas.

    filhopqd
    filhopqd
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 27
    Registrado : 26/12/2011

    [Resolvido]Atualização de consulta por trimestre Empty Re: [Resolvido]Atualização de consulta por trimestre

    Mensagem  filhopqd 2/2/2013, 22:27

    Exatamente Criquio, não coloquei os 4 SQL, para o post não ficar muito extenso.

    Existe os campos Dados.EqpT1 (1º Trim), Dados.EqpT2 (2º Trim), Dados.EqpT3 (3º Trim), Dados.EqpT4 (4º Trim).

    Tenho consultas de atualização para cada trimestre, que ao clicar no Botão, atualiza todas elas sem problemas, quando muda de ano tenho que editar a consulta alterando o ano de cada trimestre.

    Só queria montar um SQL que atualizasse os campos relativos ao Trimestre (Dados.EqpT1, Dados.EqpT2, Dados.EqpT3 Dados.EqpT4) de acordo com as datas do campo SltEqp.
    abraços!
    criquio
    criquio
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 11229
    Registrado : 30/12/2009

    [Resolvido]Atualização de consulta por trimestre Empty Re: [Resolvido]Atualização de consulta por trimestre

    Mensagem  criquio 2/2/2013, 22:48

    Ah, acho que agora entendi. Talvez seja algo assim:

    Código:
    DoCmd.RunSQL "UPDATE Dados SET Dados.EqpT1 = Dados!SltEqp WHERE ((([Dados]![SltEqp]) Between #01/01/# & Year(Date) And #31/03/# & Year(Date)));"


    .................................................................................
    Meu novo site: www.vcssistemas.com.br

    Clique aqui e veja um vídeo que explica como fazer pesquisas no forum.


    DICA: Quando precisar inserir um exemplo do seu aplicativo, siga os procedimentos abaixo:
    1 - faça uma cópia do aplicativo
    2 - retire tudo que não for necessário à solução do problema, exceto o que o aplicativo precisar para funcionar
    3 - use o Compactar/Reparar
    4 - compacte o aplicativo em zip ou rar (zip para postagem como anexo na mensagem)


    Agradeça a quem lhe ajudou, clicando no joinha de uma das mensagens do usuário.
    Positive as mensagens que achar útil, no canto superior direito delas.

    filhopqd
    filhopqd
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 27
    Registrado : 26/12/2011

    [Resolvido]Atualização de consulta por trimestre Empty Re: [Resolvido]Atualização de consulta por trimestre

    Mensagem  filhopqd 3/2/2013, 01:58

    deu erro, expressao invalida
    criquio
    criquio
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 11229
    Registrado : 30/12/2009

    [Resolvido]Atualização de consulta por trimestre Empty Re: [Resolvido]Atualização de consulta por trimestre

    Mensagem  criquio 3/2/2013, 12:48

    Tente trocando as serquilhas (#) por aspas.


    .................................................................................
    Meu novo site: www.vcssistemas.com.br

    Clique aqui e veja um vídeo que explica como fazer pesquisas no forum.


    DICA: Quando precisar inserir um exemplo do seu aplicativo, siga os procedimentos abaixo:
    1 - faça uma cópia do aplicativo
    2 - retire tudo que não for necessário à solução do problema, exceto o que o aplicativo precisar para funcionar
    3 - use o Compactar/Reparar
    4 - compacte o aplicativo em zip ou rar (zip para postagem como anexo na mensagem)


    Agradeça a quem lhe ajudou, clicando no joinha de uma das mensagens do usuário.
    Positive as mensagens que achar útil, no canto superior direito delas.

    filhopqd
    filhopqd
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 27
    Registrado : 26/12/2011

    [Resolvido]Atualização de consulta por trimestre Empty Re: [Resolvido]Atualização de consulta por trimestre

    Mensagem  filhopqd 3/2/2013, 14:38

    troquei mais tá dando erro de compilação e; sintaxe

    DoCmd.RunSQL "UPDATE Dados SET Dados.EqpT1 = Dados!SltEqp WHERE ((([Dados]![SltEqp]) Between "01/01/"& Year(Date) And "31/03/" & Year(Date)));"
    criquio
    criquio
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 11229
    Registrado : 30/12/2009

    [Resolvido]Atualização de consulta por trimestre Empty Re: [Resolvido]Atualização de consulta por trimestre

    Mensagem  criquio 3/2/2013, 15:33

    Tem que adaptar. Coloque por exemplo duas variáveis do tipo Date e coloque elas valendo a data inicial e a data final e depois passe as variáveis no lugar das datas na sql.


    .................................................................................
    Meu novo site: www.vcssistemas.com.br

    Clique aqui e veja um vídeo que explica como fazer pesquisas no forum.


    DICA: Quando precisar inserir um exemplo do seu aplicativo, siga os procedimentos abaixo:
    1 - faça uma cópia do aplicativo
    2 - retire tudo que não for necessário à solução do problema, exceto o que o aplicativo precisar para funcionar
    3 - use o Compactar/Reparar
    4 - compacte o aplicativo em zip ou rar (zip para postagem como anexo na mensagem)


    Agradeça a quem lhe ajudou, clicando no joinha de uma das mensagens do usuário.
    Positive as mensagens que achar útil, no canto superior direito delas.

    filhopqd
    filhopqd
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 27
    Registrado : 26/12/2011

    [Resolvido]Atualização de consulta por trimestre Empty Re: [Resolvido]Atualização de consulta por trimestre

    Mensagem  filhopqd 4/2/2013, 01:19

    Criei a variável mais não consegui adaptar ao SQL

    Private Sub AtualizaSaltosEquipado_Click()
    Dim primeiroDiaTrimestre1, ultimoDiaTrimestre1 As Date
    primeiroDiaTrimestre1 = CDate("01/01/" & Year(Date))
    ultimoDiaTrimestre1 = CDate("31/03/" & Year(Date))

    DoCmd.SetWarnings False

    DoCmd.RunSQL "UPDATE Dados SET Dados.EqpT1 = Dados!SltEqp WHERE ((([Dados]![SltEqp]) Between primeiroDiaTrimestre1 And ultimoDiaTrimestre1)));"

    End Sub

    Desculpe incomodar, pois sou iniciante no VBA
    filhopqd
    filhopqd
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 27
    Registrado : 26/12/2011

    [Resolvido]Atualização de consulta por trimestre Empty Re: [Resolvido]Atualização de consulta por trimestre

    Mensagem  filhopqd 5/2/2013, 01:24

    Finalmente consegui montar o SQL.
    O problema estava no formato da data e tive que usar a função que transforma o formato.
    Criei as variáveis do tipo Data e adaptei ao SQL.

    Function dataSql(argDataHora As Date) As String
    'Transforma a data no formato SQL -> #mm/dd/yy#
    dataSql = "#" & Month(argDataHora) & "/" & Day(argDataHora) & "/" & Year(argDataHora) & "#"

    End Function

    'ATUALIZA SALTO EQUIPADO 1º TRIM
    Private Sub AtualizaSltEqpTrim1_Click()
    Dim primeiroDiaTrimestre1 As Date
    Dim ultimoDiaTrimestre1 As Date
    primeiroDiaTrimestre1 = CDate("01/01/" & Year(Date))
    ultimoDiaTrimestre1 = CDate("31/03/" & Year(Date))

    DoCmd.RunSQL "UPDATE Dados SET Dados.EqpT1 = Dados!SltEqp WHERE ((([Dados]![SltEqp]) Between " & dataSql(primeiroDiaTrimestre1) & " And " & dataSql(ultimoDiaTrimestre1) & " )); "

    Obrigado Criquio, pelas dicas me ajudou muito.
    Abraços!
    criquio
    criquio
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 11229
    Registrado : 30/12/2009

    [Resolvido]Atualização de consulta por trimestre Empty Re: [Resolvido]Atualização de consulta por trimestre

    Mensagem  criquio 5/2/2013, 17:06

    O fórum agradece o retorno.


    .................................................................................
    Meu novo site: www.vcssistemas.com.br

    Clique aqui e veja um vídeo que explica como fazer pesquisas no forum.


    DICA: Quando precisar inserir um exemplo do seu aplicativo, siga os procedimentos abaixo:
    1 - faça uma cópia do aplicativo
    2 - retire tudo que não for necessário à solução do problema, exceto o que o aplicativo precisar para funcionar
    3 - use o Compactar/Reparar
    4 - compacte o aplicativo em zip ou rar (zip para postagem como anexo na mensagem)


    Agradeça a quem lhe ajudou, clicando no joinha de uma das mensagens do usuário.
    Positive as mensagens que achar útil, no canto superior direito delas.


    Conteúdo patrocinado


    [Resolvido]Atualização de consulta por trimestre Empty Re: [Resolvido]Atualização de consulta por trimestre

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 22/11/2024, 21:50