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]Troca de mês por dia no WHERE...

    MPS
    MPS
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 264
    Registrado : 19/04/2012

    [Resolvido]Troca de mês por dia no WHERE... Empty Troca de mês por dia no WHERE...

    Mensagem  MPS 11/2/2013, 17:40

    Caros colegas, esta WHERE esta transformando 01/12/2013 em 12 de janeiro de 2013.
    Como faço para corrigir esta troca de mês por dia na variável DtSalBruStart? Já tentei várias inversões.
    Agradeço desde já!
    MPS

    Dim DtSalBruStart As Date
    DtSalBruStart = DateValue(1 & "/" & LtMesStart.Value & "/" & Year(Date))
    DtSalBruStart = Format(DtSalBruStart, "dd/mm/yyyy")

    CurrentDb.Execute "UPDATE movimentacao " & "SET salbrutovalores = 0 " _
    & "WHERE [mesreferencia] >" & DtSalBruStart & "And [salbrutovalores] >0;"
    avatar
    Convidado
    Convidado


    [Resolvido]Troca de mês por dia no WHERE... Empty Re: [Resolvido]Troca de mês por dia no WHERE...

    Mensagem  Convidado 13/2/2013, 08:17

    Bom dia Mp5

    Caros colegas, esta WHERE esta transformando 01/12/2013 em 12 de janeiro de 2013.
    Como faço para corrigir esta troca de mês por dia na variável DtSalBruStart? Já tentei várias inversões.
    Agradeço desde já!
    MPS
    Verifique suas configurações de campo na tabela, quando a tipo de dados

    Dim DtSalBruStart As Date
    DtSalBruStart = CDate(1 & "/" & LtMesStart.Value & "/" & Year(Date))
    DtSalBruStart = Format(DtSalBruStart, "dd/mm/yyyy")

    CurrentDb.Execute "UPDATE movimentacao " & "SET salbrutovalores = 0 " _
    & "WHERE [mesreferencia] >" & DtSalBruStart & "And [salbrutovalores] >0;"

    Cumprimentos.
    MPS
    MPS
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 264
    Registrado : 19/04/2012

    [Resolvido]Troca de mês por dia no WHERE... Empty Re: [Resolvido]Troca de mês por dia no WHERE...

    Mensagem  MPS 13/2/2013, 13:57

    Piloto, obrigado pela resposta!
    Não funcionou!
    Tentei inverter a ordem do mês e dia no CDate, porém também não funcionou!
    At
    MPS
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Troca de mês por dia no WHERE... Empty Re: [Resolvido]Troca de mês por dia no WHERE...

    Mensagem  JPaulo 13/2/2013, 14:07

    Ola Marcio;

    De onde vem este valor e qual o valor que está lá ?

    LtMesStart.Value


    .................................................................................
    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]Troca de mês por dia no WHERE... Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Troca de mês por dia no WHERE... Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Troca de mês por dia no WHERE... Folder_announce_new Instruções SQL como utilizar...
    Avelino Sampaio
    Avelino Sampaio
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3900
    Registrado : 04/04/2010

    [Resolvido]Troca de mês por dia no WHERE... Empty Re: [Resolvido]Troca de mês por dia no WHERE...

    Mensagem  Avelino Sampaio 13/2/2013, 14:13

    Experimente a função dateSerial()

    dateserial(ano, mês, dia)

    LtMesStart é valor de um campo ? se for, use com o ME. exemplo: me!LtMesStart


    Exemplo:


    Dim DtSalBruStart As Date
    DtSalBruStart = dateserial(Year(Date),me!LtMesStart,1)

    CurrentDb.Execute "UPDATE movimentacao " & "SET salbrutovalores = 0 " _
    & "WHERE ([mesreferencia] >" & DtSalBruStart & ") And [salbrutovalores] >0;"

    Ou

    CurrentDb.Execute "UPDATE movimentacao " & "SET salbrutovalores = 0 " _
    & "WHERE (format([mesreferencia],'mm/dd/yyy') >" & format(DtSalBruStart,"mm/dd/yyyy") & ") And [salbrutovalores] >0;"

    Sucesso!


    Última edição por Avelino Sampaio em 13/2/2013, 14:14, editado 1 vez(es)


    .................................................................................
    Vídeos, livros, kit MontaRibbons e acesso vitalício ao site UsandoAcces  
    Clique AQUI e analise o custo beneficio do material oferecido.
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Troca de mês por dia no WHERE... Empty Re: [Resolvido]Troca de mês por dia no WHERE...

    Mensagem  JPaulo 13/2/2013, 14:14

    Teste sem o .Value no LtMesStart e formatando para data americana;


    Dim DtSalBruStart As Date
    DtSalBruStart = 1 & "/" & LtMesStart & "/" & Year(Date)
    DtSalBruStart = format(DtSalBruStart, "mm/dd/yyyy")



    .................................................................................
    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]Troca de mês por dia no WHERE... Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Troca de mês por dia no WHERE... Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Troca de mês por dia no WHERE... Folder_announce_new Instruções SQL como utilizar...
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Troca de mês por dia no WHERE... Empty Re: [Resolvido]Troca de mês por dia no WHERE...

    Mensagem  JPaulo 13/2/2013, 14:15

    Upsss Avelino desculpe ae, por um (1) segundo.


    .................................................................................
    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]Troca de mês por dia no WHERE... Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Troca de mês por dia no WHERE... Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Troca de mês por dia no WHERE... Folder_announce_new Instruções SQL como utilizar...
    MPS
    MPS
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 264
    Registrado : 19/04/2012

    [Resolvido]Troca de mês por dia no WHERE... Empty Re: [Resolvido]Troca de mês por dia no WHERE...

    Mensagem  MPS 13/2/2013, 19:53

    Caros Avelino e JPaulo, obrigado pela atenção!
    Não consegui, mesmo diante da ajuda de vocês!
    Tomei a liberade de postar o BD.
    Perceba que uma vez escolhido o mês 11 a lógica seria zerar somente os valores do mês 11/2013 e 12/2013. E não todos os demais!
    Agradeço desde já!
    MPS
    Anexos
    [Resolvido]Troca de mês por dia no WHERE... AttachmentBD VBA com Data de Exclusao MPS.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (1.2 Mb) Baixado 5 vez(es)
    avatar
    Convidado
    Convidado


    [Resolvido]Troca de mês por dia no WHERE... Empty Re: [Resolvido]Troca de mês por dia no WHERE...

    Mensagem  Convidado 13/2/2013, 20:56

    Poste em 2007 se possível.

    Cumprimentos.
    MPS
    MPS
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 264
    Registrado : 19/04/2012

    [Resolvido]Troca de mês por dia no WHERE... Empty Re: [Resolvido]Troca de mês por dia no WHERE...

    Mensagem  MPS 14/2/2013, 00:45

    Caro Pioloto, segue em versão anterior!
    Anexos
    [Resolvido]Troca de mês por dia no WHERE... AttachmentDb MPS Data.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (32 Kb) Baixado 2 vez(es)
    avatar
    Convidado
    Convidado


    [Resolvido]Troca de mês por dia no WHERE... Empty Re: [Resolvido]Troca de mês por dia no WHERE...

    Mensagem  Convidado 14/2/2013, 01:28

    Rapaz isto é impossível de dar certo desta forma....

    Se tivesse observado na minha primeira dica, ja teria descoberto a origem do problema, veja o que falei:

    Bom dia Mp5

    Caros colegas, esta WHERE esta transformando 01/12/2013 em 12 de janeiro de 2013.
    Como faço para corrigir esta troca de mês por dia na variável DtSalBruStart? Já tentei várias inversões.
    Agradeço desde já!
    MPS
    Verifique suas configurações de campo na tabela, quando a tipo de dados

    Dim DtSalBruStart As Date
    DtSalBruStart = CDate(1 & "/" & LtMesStart.Value & "/" & Year(Date))
    DtSalBruStart = Format(DtSalBruStart, "dd/mm/yyyy")

    CurrentDb.Execute "UPDATE movimentacao " & "SET salbrutovalores = 0 " _
    & "WHERE [mesreferencia] >" & DtSalBruStart & "And [salbrutovalores] >0;"

    Observaste a configuração do seu campo: MesReferencia?

    O formato deste campo na tabela está como: mm/yyyy

    Como voce compara uma data completa com uma data em formato Mes e Ano??????


    Ai não dá amigão.


    Cumprimentos.
    Avelino Sampaio
    Avelino Sampaio
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3900
    Registrado : 04/04/2010

    [Resolvido]Troca de mês por dia no WHERE... Empty Re: [Resolvido]Troca de mês por dia no WHERE...

    Mensagem  Avelino Sampaio 14/2/2013, 07:51

    Segue a modificação:

    Dim DtSalBruStart As Date
    DtSalBruStart = DateSerial(Year(Date), Me!LtMesStart, 1)


    CurrentDb.Execute "UPDATE movimentacao " & "SET salbrutovalores = 0 " _
    & "WHERE format([mesreferencia],'yyyymm') >=" & Format(DtSalBruStart, "yyyymm") & "And [salbrutovalores] >0;"

    Sucesso!



    .................................................................................
    Vídeos, livros, kit MontaRibbons e acesso vitalício ao site UsandoAcces  
    Clique AQUI e analise o custo beneficio do material oferecido.
    avatar
    Convidado
    Convidado


    [Resolvido]Troca de mês por dia no WHERE... Empty Re: [Resolvido]Troca de mês por dia no WHERE...

    Mensagem  Convidado 14/2/2013, 10:18

    Bom dia Meste Avelino, eu não havia postado a solução pois esperava que ele tentasse antes...

    Mas é isso ai mesmo.

    Obrigado.
    Avelino Sampaio
    Avelino Sampaio
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3900
    Registrado : 04/04/2010

    [Resolvido]Troca de mês por dia no WHERE... Empty Re: [Resolvido]Troca de mês por dia no WHERE...

    Mensagem  Avelino Sampaio 14/2/2013, 10:47

    Hary, creio que dificilmente ele acertaria este tipo de formatação.

    Sucesso!


    .................................................................................
    Vídeos, livros, kit MontaRibbons e acesso vitalício ao site UsandoAcces  
    Clique AQUI e analise o custo beneficio do material oferecido.
    MPS
    MPS
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 264
    Registrado : 19/04/2012

    [Resolvido]Troca de mês por dia no WHERE... Empty Re: [Resolvido]Troca de mês por dia no WHERE...

    Mensagem  MPS 14/2/2013, 11:31

    Caro Piloto, você tem razão!
    Eu deveria ter focado mais nesta questão da formatação da data!
    Caro Avelino, obrigado, esta ultima programação é perfeita. Este tipo de formatação eu ainda não havia encontrado nos livros!
    At
    MPS
    avatar
    Convidado
    Convidado


    [Resolvido]Troca de mês por dia no WHERE... Empty Re: [Resolvido]Troca de mês por dia no WHERE...

    Mensagem  Convidado 14/2/2013, 12:39

    O Fórum afradece o Retorno.

    Conteúdo patrocinado


    [Resolvido]Troca de mês por dia no WHERE... Empty Re: [Resolvido]Troca de mês por dia no WHERE...

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 26/11/2024, 11:23