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


4 participantes

    Exibir os meses entre duas datas em linhas

    avatar
    rcosta
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Anónimo
    Mensagens : 5
    Registrado : 18/03/2013

    Exibir os meses entre duas datas em linhas Empty Exibir os meses entre duas datas em linhas

    Mensagem  rcosta 29/4/2022, 01:56

    Boa noite!
    Preciso de uma função que mostre os meses entre uma data e outra, exemplo:
    data_inicio=01/10/2021
    data_fim=25/02/2022
    quero que a consulta exiba os meses 10/2021, 11/2021, 12/2021, 01/2022 e 02/2022.
    Alguém pode me ajudar?
    DamascenoJr.
    DamascenoJr.
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3845
    Registrado : 22/11/2016

    Exibir os meses entre duas datas em linhas Empty Re: Exibir os meses entre duas datas em linhas

    Mensagem  DamascenoJr. 5/5/2022, 00:40

    Código:
    Public Function fncMostraMeses(ByVal dtDataMenor As Date, ByVal dtDataMaior As Date) As String

        Dim strResultado As String

        If dtDataMenor > dtDataMaior Then
            fncMostraMeses = ""
        Else
       
            Do
           
                strResultado = strResultado & ", " & Format(dtDataMenor, "mm/yyyy")
           
                If Format(dtDataMenor, "mm/yyyy") = Format(dtDataMaior, "mm/yyyy") Then
                    Exit Do
                Else
                    dtDataMenor = DateAdd("m", 1, dtDataMenor)
                End If
           
            Loop
           
            fncMostraMeses = Mid(strResultado, 3)
       
        End If

    End Function


    .................................................................................
    Ajude-se a ser ajudado, anexe seu projeto.
    Sempre tente entender o código,
    não somente copie e cole.
    Positive as mensagens que achar útil clicando no '+' no canto superior direito delas.

    rcosta gosta desta mensagem

    avatar
    rcosta
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Anónimo
    Mensagens : 5
    Registrado : 18/03/2013

    Exibir os meses entre duas datas em linhas Empty Exibir os meses entre duas datas

    Mensagem  rcosta 12/5/2022, 23:46

    Boa noite DamascenoJr., seu código funcionou perfeitamente, lhe agradeço de coração pela ajuda, porém, os meses aparecem concatenados.
    Sem querer abusar, seria possível fazer com que os meses sejam exibidos em linhas, por exemplo:
    Exibir os meses entre duas datas em linhas Meses11
    DamascenoJr.
    DamascenoJr.
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3845
    Registrado : 22/11/2016

    Exibir os meses entre duas datas em linhas Empty Re: Exibir os meses entre duas datas em linhas

    Mensagem  DamascenoJr. 13/5/2022, 02:07

    Envie um banco exemplo, e descreva exatamente como deve ser. (a ação que você quer executar e a resposta esperada)


    .................................................................................
    Ajude-se a ser ajudado, anexe seu projeto.
    Sempre tente entender o código,
    não somente copie e cole.
    Positive as mensagens que achar útil clicando no '+' no canto superior direito delas.
    avatar
    Wilson90
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Angola
    Mensagens : 59
    Registrado : 19/10/2015

    Exibir os meses entre duas datas em linhas Empty Re: Exibir os meses entre duas datas em linhas

    Mensagem  Wilson90 13/5/2022, 12:46

    Tem que usar a funcao between. Tipo
    Select campo where datainicio between datafim
    avatar
    rcosta
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Anónimo
    Mensagens : 5
    Registrado : 18/03/2013

    Exibir os meses entre duas datas em linhas Empty Exibir os meses entre duas datas

    Mensagem  rcosta 26/5/2022, 02:10

    DamascenoJr preciso que o resultado da consulta exiba o nome do funcionário e os meses em que ele estará de licença médica, por exemplo, Fulano de tal apresentou um atestado onde estará de licença no período de 12/11/2022 a 12/02/2023, a consulta deve exibir o nome do funcionário e os meses em que ele estará de licença. Nesse caso eu tenho três informações na minha tabela: funcionário, dt_inicial e dt_final, na consulta tem que aparecer o nome do funcionário repetido 04 vezes, que é a quantidade de meses que ele estará de licença, e os meses que ela estará de licença.

    Exibir os meses entre duas datas em linhas Mes10
    Avelino Sampaio
    Avelino Sampaio
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

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

    Exibir os meses entre duas datas em linhas Empty Re: Exibir os meses entre duas datas em linhas

    Mensagem  Avelino Sampaio 26/5/2022, 08:22

    Olá!

    sugiro que crie uma tabela auxiliar para isso (tblLicencaMedica). Altere a função sugerida pelo Damasceno, para gravar os registros na tabela.



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


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Anónimo
    Mensagens : 5
    Registrado : 18/03/2013

    Exibir os meses entre duas datas em linhas Empty Re: Exibir os meses entre duas datas em linhas

    Mensagem  rcosta 1/6/2022, 07:26

    Olá Avelino Sampaio, pode me ajudar a alterar a função do DamascenoJr?
    avatar
    rcosta
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Anónimo
    Mensagens : 5
    Registrado : 18/03/2013

    Exibir os meses entre duas datas em linhas Empty Exibir os meses entre duas datas em linhas

    Mensagem  rcosta 30/6/2022, 06:15

    Ainda não consegui alterar a função que o amigo DamascenoJr criou, alguém pode me ajudar?

    Conteúdo patrocinado


    Exibir os meses entre duas datas em linhas Empty Re: Exibir os meses entre duas datas em linhas

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 17/6/2024, 05:30