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

    Como Ordenar um Relatório a partir de um campo Cálculo no mesmo?

    avatar
    brad0557
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Anónimo
    Mensagens : 16
    Registrado : 03/12/2013

    Como Ordenar um Relatório a partir de um campo Cálculo no mesmo? Empty Como Ordenar um Relatório a partir de um campo Cálculo no mesmo?

    Mensagem  brad0557 3/12/2013, 23:43

    [b]Pessoal,



    Tenho uma consulta que me retorna o total de um determinado campo, porém preciso

    calcular o percentual desse total sobre o total geral. Consigo fazer isso em

    relatório sem problemas colocando um total geral e gerando ao lado de cada campo

    o calculo do percentual, até ai tudo bem.


    Acontece que preciso que esse campo percentual seja o campo da minha ordenação

    (do menor percentual para o maior), porém se eu crio o campo no relátorio

    não consigo fazer a ordenação pelo mesmo, e também não consigo na consulta

    gerar essa coluna de percentual, pois não tenho o total geral.


    Minha pergunta é, será que alguém poderia me dar uma ajuda de como resolver esse

    problema?


    EX: consulta

    ============

    campo1 campo2(tot)

    (agrupado) (soma)

    aaaa 500

    bbbb 100

    cccc 400



    EX: relatorio - atual

    ================

    campo1 campo2(tot) campo3(%)

    aaaa 500 50%

    bbbb 100 10%

    cccc 400 40%


    Total Geral 1000


    Preciso ordenar pelo percentual, porém esse não está na consulta. Gostaria que ficasse no relatório assim:


    EX: relatorio - como gostaria

    =======================

    campo1 campo2(tot) campo3(%)

    bbbb 100 10%

    cccc 400 40%

    aaaa 500 50%



    Total Geral 1000

    Muito Obrigado
    Avelino Sampaio
    Avelino Sampaio
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

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

    Como Ordenar um Relatório a partir de um campo Cálculo no mesmo? Empty Re: Como Ordenar um Relatório a partir de um campo Cálculo no mesmo?

    Mensagem  Avelino Sampaio 4/12/2013, 08:10

    Olá!

    Abra o relatório no modo estrutura
    Abaixo do relatório clique no botão "adicionar classificação" > Clique em "Expressão"  > monte a fórmula.  Exemplo:

    =([campo3]/[campoTotal]) * 100

    Nota: se o botão "adicionar classificação" não estiver aparecendo , clique no botão da ribbon "Agrupar e Classificar"

    Aguardamos


    Última edição por Avelino Sampaio em 4/12/2013, 09:06, editado 1 vez(es)


    .................................................................................
    Vídeos, livros, kit MontaRibbons e acesso irrestrito ao site UsandoAcces  
    Clique AQUI e analise o custo beneficio do material oferecido.
    Avelino Sampaio
    Avelino Sampaio
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

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

    Como Ordenar um Relatório a partir de um campo Cálculo no mesmo? Empty Re: Como Ordenar um Relatório a partir de um campo Cálculo no mesmo?

    Mensagem  Avelino Sampaio 4/12/2013, 09:05

    Opa!

    Agora que percebi que vc está pegando o "Total Geral" do rodapé.  Isso não vai funcionar usando este campo total do rodapé

    Faça o seguinte:  Use o código abaixo no seu relatório:


    Private Sub Report_Close()
    TempVars.Remove "p"
    End Sub
    '-------------------------------------------------------------------------
    Private Sub Report_Open(Cancel As Integer)
    Dim rs As DAO.Recordset
    Dim SomaCampo2
    Set rs = CurrentDb.OpenRecordset(Me.RecordSource, 8 )
    Do While Not rs.EOF
       SomaCampo2 = SomaCampo2 + Nz(rs!Campo2, 0)
       rs.MoveNext
    Loop
    Set rs = Nothing
    TempVars.Add "p", 0
    TempVars!p = SomaCampo2
    End Sub


    Na expressão, altere para:

    =([campo3]/[TempVars]![p]) * 100

    Assista este meu vídeo sobre TempVars:

    http://www.usandoaccess.com.br/tutoriais/tuto31.asp?id=1#inicio

    Aguardamos


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


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Anónimo
    Mensagens : 16
    Registrado : 03/12/2013

    Como Ordenar um Relatório a partir de um campo Cálculo no mesmo? Empty Re: Como Ordenar um Relatório a partir de um campo Cálculo no mesmo?

    Mensagem  brad0557 5/12/2013, 07:34

    Pessoal,

    Obrigado pela ajuda, hoje a noite estarei testando a maneira informado

    Grato e abs

    Conteúdo patrocinado


    Como Ordenar um Relatório a partir de um campo Cálculo no mesmo? Empty Re: Como Ordenar um Relatório a partir de um campo Cálculo no mesmo?

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 29/3/2024, 01:49