MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

Obrigado

Administração do MaximoAccess

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

    [Resolvido]Usar Dcount no relatório para contar campo com critérios entre datas

    augustopimenta
    augustopimenta
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 129
    Registrado : 19/03/2012

    [Resolvido]Usar Dcount no relatório para contar campo com critérios entre datas Empty [Resolvido]Usar Dcount no relatório para contar campo com critérios entre datas

    Mensagem  augustopimenta em 21/6/2020, 16:06

    Ola pessoal..

    Estou usando a seguinte escrita para realizar a contagem de um campo.
    Numa caixa de texto do relatório coloquei o seguinte código:

    =DContar("[CodMicroorganismoMov]";"tblMovimento";"[CodMicroorganismoMov] = [CodMicroorganismo]" & "And [DataColeta] BETWEEN #" & [DataInicial] & "# AND #" & [DataFinal] & "#")

    No entanto ele está contando todos os registros independente da data que coloque no intervalo. Essa data é colocada num formulário onde o usuário informa o período.

    O que estou fazendo de errado ?
    Alguém pode ajudar, desde já agradeço ..

    Sempre tenho dificuldades nessas sintaxes ..
    Celso Roberto
    Celso Roberto
    VIP
    VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1063
    Registrado : 01/03/2014

    [Resolvido]Usar Dcount no relatório para contar campo com critérios entre datas Empty Re: [Resolvido]Usar Dcount no relatório para contar campo com critérios entre datas

    Mensagem  Celso Roberto em 21/6/2020, 16:43

    Olá..

    Altere esta parte com seus dados:

    between #" & Format(Forms!NomeFormFiltraData!NomeCampoDataInicial, "mm/dd/yyyy") & "# AND #" & Format(Forms!Forms!NomeFormFiltraData!NomeCampoDataFinal, m/dd/yyyy") & "#)

    NomeFormFiltraData = nome do formulario que filtra a data
    NomeCampoDataInicial = nome do campo data inicio do formulario
    NomeCampoDataFinal, = nome do campo data final do formulario

    ou anexeexemplo para testes

    Aguardamos retorno

    Abraços


    .................................................................................


    Você fica satisfeito ao ter sua dúvida solucionada?.
    Quem te ajuda também fica quando você da o tópico por "Resolvido".
    Veja como neste Link: https://www.maximoaccess.com/t860-resolucao-de-topicos



    A Única coisa que sei é que ainda nada sei, Mas em breve Saberei.....
    augustopimenta
    augustopimenta
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 129
    Registrado : 19/03/2012

    [Resolvido]Usar Dcount no relatório para contar campo com critérios entre datas Empty Re: [Resolvido]Usar Dcount no relatório para contar campo com critérios entre datas

    Mensagem  augustopimenta em 21/6/2020, 17:28

    Deu erro de sintaxe ...

    Segue o banco em anexo ..
    Anexos
    [Resolvido]Usar Dcount no relatório para contar campo com critérios entre datas AttachmentControleSCIH - Copia.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (833 Kb) Baixado 3 vez(es)
    Celso Roberto
    Celso Roberto
    VIP
    VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1063
    Registrado : 01/03/2014

    [Resolvido]Usar Dcount no relatório para contar campo com critérios entre datas Empty Re: [Resolvido]Usar Dcount no relatório para contar campo com critérios entre datas

    Mensagem  Celso Roberto em 21/6/2020, 18:01

    Olá..

    Como visualizo o relatorio pelo formulario?

    De o passo a passo , com usuario e senha

    Aguardo


    .................................................................................


    Você fica satisfeito ao ter sua dúvida solucionada?.
    Quem te ajuda também fica quando você da o tópico por "Resolvido".
    Veja como neste Link: https://www.maximoaccess.com/t860-resolucao-de-topicos



    A Única coisa que sei é que ainda nada sei, Mas em breve Saberei.....
    augustopimenta
    augustopimenta
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 129
    Registrado : 19/03/2012

    [Resolvido]Usar Dcount no relatório para contar campo com critérios entre datas Empty Re: [Resolvido]Usar Dcount no relatório para contar campo com critérios entre datas

    Mensagem  augustopimenta em 21/6/2020, 18:23

    Abre o banco com a tecla shift..Abre o form de parametros, coloca as datas.. e depois clica no relatorio com botao direito e clica em visualizar impresão .. Não fiz o botao ainda.. to testando e deu esse erro .. No relatorio tem um campo Freq onde quero que apareca a quantidade.. de cada microorganismo.. é onde quero colocar o dcount mas ta dando erro ..


    Agradeço pela ajuda mais uma vez .. Valeu ...
    Celso Roberto
    Celso Roberto
    VIP
    VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1063
    Registrado : 01/03/2014

    [Resolvido]Usar Dcount no relatório para contar campo com critérios entre datas Empty Re: [Resolvido]Usar Dcount no relatório para contar campo com critérios entre datas

    Mensagem  Celso Roberto em 21/6/2020, 18:40

    Olá..

    Para que eu faça teste de resultado, me passa um exemplo de filtro e qual o resultado esperado

    Aguardo


    .................................................................................


    Você fica satisfeito ao ter sua dúvida solucionada?.
    Quem te ajuda também fica quando você da o tópico por "Resolvido".
    Veja como neste Link: https://www.maximoaccess.com/t860-resolucao-de-topicos



    A Única coisa que sei é que ainda nada sei, Mas em breve Saberei.....
    augustopimenta
    augustopimenta
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 129
    Registrado : 19/03/2012

    [Resolvido]Usar Dcount no relatório para contar campo com critérios entre datas Empty Re: [Resolvido]Usar Dcount no relatório para contar campo com critérios entre datas

    Mensagem  augustopimenta em 21/6/2020, 18:46

    Coloca o periodo de 01/06/2020 a 10/06/2020 - Nesse periodo o microorgmismo Morganella Morganii tem que dá 2 .
    Depois coloca o periodo de 01/06/2020 a 30/06/2020. Nesse periodo esse mesmo microorganismo tem que dá 3.

    Se acontecer isso acho que ta certo.. mas vou precisar testar mais ´pra ver ,.. rsrs
    Celso Roberto
    Celso Roberto
    VIP
    VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1063
    Registrado : 01/03/2014

    [Resolvido]Usar Dcount no relatório para contar campo com critérios entre datas Empty Re: [Resolvido]Usar Dcount no relatório para contar campo com critérios entre datas

    Mensagem  Celso Roberto em 22/6/2020, 00:16

    Olá...

    Faça teste:

    Crie o botão no frmParametrosAntimicrobiPorMicroorg e no evento ao clicar:

    Código:
    DoCmd.OpenReport "rptAntimicrobianosPorMicroorgResumo", acViewPreview


    No evento ao imprimir do CabeçalhoDoGrupo0 do Relatório, Cole este código abaixo:

    Código:
    Private Sub CabeçalhoDoGrupo0_Print(Cancel As Integer, PrintCount As Integer)
    Dim strFiltro$

    strFiltro = "[CodMicroorganismoMov] = " & Me.CodMicroorganismo & " and "
    strFiltro = strFiltro & "([DataColeta] between #" & Format(Forms!frmParametrosAntimicrobiPorMicroorg!DataInicial, "mm/dd/yyyy") & "#"
    strFiltro = strFiltro & "AND #" & Format(Forms!frmParametrosAntimicrobiPorMicroorg!DataFinal, "mm/dd/yyyy") & "#)"


    Me.txtQtdMicroorg = DCount("CodMicroorganismoMov", "tblMovimento", strFiltro)

    End Sub

    Faça teste e veja se é o que precisa.

    Aguardamos retorno

    Abraços e sucesso


    .................................................................................


    Você fica satisfeito ao ter sua dúvida solucionada?.
    Quem te ajuda também fica quando você da o tópico por "Resolvido".
    Veja como neste Link: https://www.maximoaccess.com/t860-resolucao-de-topicos



    A Única coisa que sei é que ainda nada sei, Mas em breve Saberei.....
    augustopimenta
    augustopimenta
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 129
    Registrado : 19/03/2012

    [Resolvido]Usar Dcount no relatório para contar campo com critérios entre datas Empty Re: [Resolvido]Usar Dcount no relatório para contar campo com critérios entre datas

    Mensagem  augustopimenta em 22/6/2020, 01:13

    Era exatamente isso doutor..
    Muito obrigado pela paciência e pelo tempo ..
    Consegui fazer funcionar tb da seguinte maneira nesse mesmo evento ao imprimir:

    Me.txtQtd = DCount("*", "tblMovimento", "[CodMicroorganismoMov] = " & Me.CodMicroorganismo & " And ([DataColeta] between #" & Format(Forms!frmParametrosAntimicrobiPorMicroorg!DataInicial, "mm/dd/yyyy") & "# And #" & Format(Forms!frmParametrosAntimicrobiPorMicroorg!DataFinal, "mm/dd/yyyy") & "#)")

    Mais uma vez muito obrigado ..
    Agora gostaria de saber como faria para mostrar a soma desse campo no final do relatório (Como é um campo não associado não consigo somar). Seria a quantidade geral dos microorganismos. Essa questão ai foi resolvida, não sei se tenho que abrir outro tópico.
    Sem querer abusar e já abusando ...
    Celso Roberto
    Celso Roberto
    VIP
    VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1063
    Registrado : 01/03/2014

    [Resolvido]Usar Dcount no relatório para contar campo com critérios entre datas Empty Re: [Resolvido]Usar Dcount no relatório para contar campo com critérios entre datas

    Mensagem  Celso Roberto em 22/6/2020, 01:47

    Olá..

    No evento ao Imprimir do RodapéDoRelatório

    Código:
    Private Sub RodapéDoRelatório_Print(Cancel As Integer, PrintCount As Integer)
    Dim strFiltro$


    strFiltro = "[DataColeta] between #" & Format(Forms!frmParametrosAntimicrobiPorMicroorg!DataInicial, "mm/dd/yyyy") & "#"
    strFiltro = strFiltro & "AND #" & Format(Forms!frmParametrosAntimicrobiPorMicroorg!DataFinal, "mm/dd/yyyy") & "#"

    Me.Texto85 = DCount("CodMicroorganismoMov", "tblMovimento", strFiltro)
    End Sub


    Ou

    Código:
    Me.Texto85 = DCount("[CodMicroorganismoMov]", "tblMovimento", "[DataColeta] between #" & Format(Forms!frmParametrosAntimicrobiPorMicroorg!DataInicial, "mm/dd/yyyy") & "# And #" & Format(Forms!frmParametrosAntimicrobiPorMicroorg!DataFinal, "mm/dd/yyyy") & "#")


    Aguardamos retorno

    Abraços


    .................................................................................


    Você fica satisfeito ao ter sua dúvida solucionada?.
    Quem te ajuda também fica quando você da o tópico por "Resolvido".
    Veja como neste Link: https://www.maximoaccess.com/t860-resolucao-de-topicos



    A Única coisa que sei é que ainda nada sei, Mas em breve Saberei.....
    augustopimenta
    augustopimenta
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 129
    Registrado : 19/03/2012

    [Resolvido]Usar Dcount no relatório para contar campo com critérios entre datas Empty Re: [Resolvido]Usar Dcount no relatório para contar campo com critérios entre datas

    Mensagem  augustopimenta em 22/6/2020, 12:55

    Olá Celso..
    Eu já fiz isso.. Funcionou perfeitamente.. Obrigado ..
    Eu não me expliquei direito..
    Tenho um outro relatório que é emitido quado seleciono os microorganismos numa caixa de listagem.  É nesse relatório que não consigo que ele some os microorganismos que eu selecionei no fim do relatório. Quando coloco esse código no rodapé do relatório ele soma tudo e não apenas aqueles que eu selecionei. Desculpe não tinha explicado isso antes.
    Estou mandando em anexo o banco com esse relatório. vai no formulário de parametros, seleciona os microorganismos, clica na opção "Por microorganismo selecionado", coloca o período e clica em visualizar.. é nesse relatório que preciso fazer essa soma..

    Obrigado mais uma vez pela paciência e pelo tempo ..
    Anexos
    [Resolvido]Usar Dcount no relatório para contar campo com critérios entre datas AttachmentControleSCIHCopia.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (779 Kb) Baixado 4 vez(es)
    Celso Roberto
    Celso Roberto
    VIP
    VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1063
    Registrado : 01/03/2014

    [Resolvido]Usar Dcount no relatório para contar campo com critérios entre datas Empty Re: [Resolvido]Usar Dcount no relatório para contar campo com critérios entre datas

    Mensagem  Celso Roberto em 23/6/2020, 03:04

    Olá..

    A forma que encontrei de retornar o resultado que deseja foi um pouco complicada, não sei se é a forma ideal
    Depois de várias tentativas, esta foi a que consegui o resultado.

    Vamos lá:

    - No formulário frmParametrosAntimicrobiPorMicroorg, acrescentei um código para criar uma tabela temporária de acordo com o filtro nesta parte do código do botão;

    Código:
    ElseIf Me.GrupoTipoRel = 2 Then
            DoCmd.OpenReport "rptAntimicrobianosPorMicroorgSelecionado", acViewPreview, , filtro
            DoCmd.Maximize
           
            'Cria a tabela temporária referente ao filtro
            StrSQL = "SELECT * INTO tblMovimentoTemp FROM tblMicroorganismo WHERE " & filtro & ""
            DoCmd.SetWarnings False
            DoCmd.RunSQL StrSQL
            DoCmd.SetWarnings True
         
        End If

    - Com esta tabela temporaria criei uma consulta e dei o nome de qryMovimentos , incluindo dados da tblMovimentos:

    Código:
    SELECT tblMovimento.CodControleMov, tblMovimento.DataCadastro, tblMovimento.Prontuario, tblMovimento.NomePaciente, tblMovimento.DataNasc, tblMovimento.Idade, tblMovimento.CodSexoMov, tblMovimento.DataColeta, tblMovimento.CodSetorMov, tblMovimento.CodSitioMov, tblMovimento.CodMicroorganismoMov, tblMovimento.GrupoMicroorgMov, tblMovimento.Obs, tblMovimento.Finalizado
    FROM tblMovimentoTemp INNER JOIN tblMovimento ON tblMovimentoTemp.CodMicroorganismo = tblMovimento.CodMicroorganismoMov;

    - No evento ao Imprimir do RodapéDoRelatório do Relatório usei esta consulta para contar o total desejado:

    Código:
    Private Sub RodapéDoRelatório_Print(Cancel As Integer, PrintCount As Integer)
    Dim strFiltro$

    strFiltro = "[DataColeta] between #" & Format(Forms!frmParametrosAntimicrobiPorMicroorg!DataInicial, "mm/dd/yyyy") & "#"
    strFiltro = strFiltro & "AND #" & Format(Forms!frmParametrosAntimicrobiPorMicroorg!DataFinal, "mm/dd/yyyy") & "#"

    Me.txtTotalRodape = DCount("CodMicroorganismoMov", "qryMovimentos", strFiltro)

    End Sub

    Aguardamos retorno

    Abraços e sucesso





    .................................................................................


    Você fica satisfeito ao ter sua dúvida solucionada?.
    Quem te ajuda também fica quando você da o tópico por "Resolvido".
    Veja como neste Link: https://www.maximoaccess.com/t860-resolucao-de-topicos



    A Única coisa que sei é que ainda nada sei, Mas em breve Saberei.....
    Celso Roberto
    Celso Roberto
    VIP
    VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1063
    Registrado : 01/03/2014

    [Resolvido]Usar Dcount no relatório para contar campo com critérios entre datas Empty Re: [Resolvido]Usar Dcount no relatório para contar campo com critérios entre datas

    Mensagem  Celso Roberto em 23/6/2020, 04:31

    Olá...

    Altere esta parte do código "Esta errado porque primeiro abre o Relatório e depois cria a tabela temporária, náo estava atualizando a consulta"
    Código:
    ElseIf Me.GrupoTipoRel = 2 Then
            DoCmd.OpenReport "rptAntimicrobianosPorMicroorgSelecionado", acViewPreview, , filtro
            DoCmd.Maximize
           
            'Cria a tabela temporária referente ao filtro
            StrSQL = "SELECT * INTO tblMovimentoTemp FROM tblMicroorganismo WHERE " & filtro & ""
            DoCmd.SetWarnings False
            DoCmd.RunSQL StrSQL
            DoCmd.SetWarnings True
         
        End If

    Para este " Este cria a tabela temporária e depois abre o relatório"
    Código:
    ElseIf Me.GrupoTipoRel = 2 Then
         
     'Cria a tabela temporária referente ao filtro
            StrSQL = "SELECT * INTO tblMovimentoTemp FROM tblMicroorganismo WHERE " & filtro & ""
            DoCmd.SetWarnings False
            DoCmd.RunSQL StrSQL
            DoCmd.SetWarnings True
           
           
            DoCmd.OpenReport "rptAntimicrobianosPorMicroorgSelecionado", acViewPreview, , filtro
            DoCmd.Maximize
         
        End If

    Aguardamos retorno

    Abraços




    .................................................................................


    Você fica satisfeito ao ter sua dúvida solucionada?.
    Quem te ajuda também fica quando você da o tópico por "Resolvido".
    Veja como neste Link: https://www.maximoaccess.com/t860-resolucao-de-topicos



    A Única coisa que sei é que ainda nada sei, Mas em breve Saberei.....
    augustopimenta
    augustopimenta
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 129
    Registrado : 19/03/2012

    [Resolvido]Usar Dcount no relatório para contar campo com critérios entre datas Empty Re: [Resolvido]Usar Dcount no relatório para contar campo com critérios entre datas

    Mensagem  augustopimenta em 23/6/2020, 14:16

    Rapaz ..
    Vc é fera(Verdadeiro Ninja) rsrs .... Eu jamais teria conseguido fazer isso.. Vivendo e aprendendo ...rsrs..Tenho muito que aprender mesmo.. cada dia vejo que não sei quase nada.. rsrs
    Muito obrigado Celso.. vc ajudou demais ...
    Funcionou perfeitamente ..
    Sucesso pra vc.. grande abraço ..
    Celso Roberto
    Celso Roberto
    VIP
    VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1063
    Registrado : 01/03/2014

    [Resolvido]Usar Dcount no relatório para contar campo com critérios entre datas Empty Re: [Resolvido]Usar Dcount no relatório para contar campo com critérios entre datas

    Mensagem  Celso Roberto em 23/6/2020, 23:37

    Olá...

    Fico feliz por ter ajudado. cheers cheers

    Agradeço o seu retorno.

    Abraços e sucesso



    .................................................................................


    Você fica satisfeito ao ter sua dúvida solucionada?.
    Quem te ajuda também fica quando você da o tópico por "Resolvido".
    Veja como neste Link: https://www.maximoaccess.com/t860-resolucao-de-topicos



    A Única coisa que sei é que ainda nada sei, Mas em breve Saberei.....

      Data/hora atual: 10/8/2020, 06:42