locked
Dúvida Consulta RRS feed

  • Pergunta

  • Pessoal,

    Bom dia!

    Estou com um problema um pouco complicado para resolver aqui, tenho uma consulta aqui que me retorna essa estrutura:

     

    RAÇÂO CRESC. II 2-mai-11 02/05/2011 -5.880,00 

    RAÇÂO CRESC. II 2-mai-11 02/05/2011 -12.280,00 

    RAÇÂO CRESC. II 9-mai-11 09/05/2011 -14.000,00 

    RAÇÂO CRESC. II 17-mai-11 17/05/2011 -15.780,00 

    RAÇÂO CRESC. II 17-mai-11 17/05/2011 -14.100,00 

    1 - Criar uma nova coluna, e sempre pegar o primeiro dia do mês e colocar 0,00.

    2 - Então na coluna referente ao dia seguinte ao inicial do mês colocar o valor do dia 03/05/2011.

     

    Então ficaria assim:

     

    RAÇÂO CRESC. II 2-mai-11 02/05/2011 -5.880,00                 0,00

    RAÇÂO CRESC. II 2-mai-11 02/05/2011 -12.280,00               -5.880,00 

    RAÇÂO CRESC. II 9-mai-11 09/05/2011 -14.000,00              -12.280,00

    RAÇÂO CRESC. II 17-mai-11 17/05/2011 -15.780,00              -14.000,00

    RAÇÂO CRESC. II 17-mai-11 17/05/2011 -14.100,00             -15.780,00

     

    Obrigado!

     


    HENRY CHARRIERE
    sexta-feira, 3 de junho de 2011 11:58

Todas as Respostas

  • Olá Henry,

    uma forma de fazer o que precisa é por meio de relatório.

    Imagine, por exemplo, que você tenha uma tabela ou consulta com os campos ID (autonumérico), DataRef (ex.: 02/05/2011, 09/05/2011), Descricao (ex.: RAÇÂO CRESC. II) e ValorLcto (ex.: -5880, -12280).

    Com base nesta tabela ou consulta, você cria um relatório com os campos Descricao, DataRef, ValorLcto e Valor2 (este campo Valor2 é não-acoplado, ou seja, é apenas uma caixa de texto em branco na Seção Detalhe).

    Se o seu controle de valores for por descrição, você pode criar um cabeçalho de grupo para Descricao.

    No módulo VBA do relatório, você cria uma variável na seção Geral:

    Option Compare Database
    Option Explicit
    
    Private mcurValor2 As Currency
    
    

     

    No evento Ao Imprimir do cabeçalho de grupo ou do cabeçalho do relatório, você zera a variável:

    Private Sub CabeçalhoDoGrupo0_Print(Cancel As Integer, PrintCount As Integer)
    mcurValor2 = 0
    End Sub
    

     

    No evento Ao Imprimir da seção Detalhe, você coloca a lógica para pegar o valor da linha anterior e preencher a caixa Valor2:

    Private Sub Detalhe_Print(Cancel As Integer, PrintCount As Integer)
    
    On Error GoTo ErrHandler
    
    'Preenche a caixa não-acoplada
    Me.Valor2 = mcurValor2
    
    'Armazena o valor para a próxima linha
    mcurValor2 = Me.ValorLcto
    
    ExitHere:
    Exit Sub
    
    ErrHandler:
    MsgBox Err.Description & vbCrLf & Err.Number & vbCrLf & Err.Source, vbCritical, "Report_Relatório1-Detalhe_Print"
    Resume ExitHere
    Resume
    End Sub

     

    Abra o relatório no modo Visualização de Impressão para disparar o evento Ao Imprimir.


    Luiz Cláudio Cosenza Vieira da Rocha - http://msmvps.com/blogs/officedev - IT Lab www.itlab.com.br - Access FAQ: www.accessfaq.com.br
    sexta-feira, 3 de junho de 2011 20:37
    Moderador