Página 1 de 1

Formatação de Relatório "Contas Patrimoniais"

Enviado: 15 Dez 2015 às 14:41
por luizhalmeida
Boa tarde!

Tenho um relatório que é composto pelas contas patrimoniais (ATIVO e PASSIVO). Na verdade ele é bem maior do que o anexo, eu reduzi ele, mas mantive a essência.
Enfim, na "aba 1" destaquei de amarelo e laranja as linhas que tem que tirar e na "aba 2" como o relatório deve ficar.
Isso consiste em eliminar as quebras de linha (quando o histórico do evento fica muito grande, ele cai pra linha de baixo, e aí pode remover essa sobra pro relatório não ficar tão grande), eliminar a "*****Continuação" (em verde) que existe quando quebra a página e não terminou ainda o relatório daquela conta, e eliminar o restante das linhas que são informações de cabeçalho e rodapé.


Também preciso deixar uma linha branca sempre na linha superior que houver a "Conta" para separar uma conta da outra, e aí então eliminar os "underlines _______" que atualmente estão separando elas...

Será que podem me ajudar?

Formatação de Relatório "Contas Patrimoniais"

Enviado: 16 Dez 2015 às 11:03
por Parkeless
E aí Luiz, boa tarde!

Dessa vez teve bastante detalhes; não sei se peguei todos. Faz um teste e vê se faltou alguma coisa.

Re: Formatação de Relatório "Contas Patrimoniais"

Enviado: 16 Dez 2015 às 13:04
por luizhalmeida
Boa tarde Parkeless!

Então, como você cogitou... não deu muito certo rsrs.

Ele removeu as linhas brancas e aglomerou tudo, não ficando espaço em branco entre uma e outra...
Outra coisa foi que aquelas linhas com "*****Continuação", onde repete o título da conta e continuam os lançamentos, não foram excluídas=/

Ele removeu os cabeçalhos, ficou somente o da primeira página, quando a isso não tem problema...

E também gostaria que fossem removidas as quebras de linha (quando o histórico é muito grande), da mesma forma que você me ajudou nesse tópico: http://gurudoexcel.com/forum/viewtopic.php?f=7&t=1068

Desde já o meu muito obrigado! ;)

Formatação de Relatório "Contas Patrimoniais"

Enviado: 16 Dez 2015 às 13:49
por Parkeless
Então Luiz,

Que estranho; pelo menos sobre o relatório que você tinha postado, a macro está deixando exatamente como você fez manualmente na aba "Como deve ficar"... Estou reenviando, com os seus dados; tente novamente por favor. Se o erro persistir, anexe o arquivo...

Re: Formatação de Relatório "Contas Patrimoniais"

Enviado: 16 Dez 2015 às 14:28
por luizhalmeida
Parkeless,

Segue o relatório que o sistema exporta (anexo). Preciso que seja removido as quebras de página e as quebras de linha, ficando somente o título das contas (com uma linha branca acima), os dados das contas (data/histórico/débito/crédito/...) e quando essa conta acabar, uma nova linha branca com o título da próxima e assim por diante.

Se uma conta não termina na mesma página e passa pra próxima, aparece o termo "****continuação", esse também deve ser removido para que o relatório da conta fique contínuo. No anexo destaquei o que gostaria que saísse...

Formatação de Relatório "Contas Patrimoniais"

Enviado: 16 Dez 2015 às 14:47
por Parkeless
Luiz,

O relatório que você postou agora está bem diferente do primeiro anexo que você mandou, planilha Contas-patrimoniais.xlsm, aba "Como exporta".

Só pelo que olhei por cima já vi três diferenças que invalidam a macro:

Planilha Contas Patrimoniais:
1. Acima da palavra "Conta", havia uma célula com vários underlines.
2. Logo abaixo dessa mesma palavra "Conta", havia uma linha em branco, e só após, o conteúdo.
3. O texto de quebra de linha ocorre na coluna "A".

Planilha Nova - Patrimoniais:
1. Acima da palavra "Conta" há uma linha em branco.
2. Logo abaixo da palavra "Conta", não há uma linha em branco, já vai para o conteúdo.
3. As quebras nessa planilha acontecem na coluna C.

Provavelmente tem mais diferenças, mas parei por aqui... e a macro não vai funcionar mesmo se você tentar rodar nela um layout diferente para o qual ela foi desenvolvida

O primeiro arquivo que você postou, estava errado?

Re: Formatação de Relatório "Contas Patrimoniais"

Enviado: 16 Dez 2015 às 15:00
por luizhalmeida
Parkeless, você tem razão! Na pressa gerei um relatório no modo "gráfico", mas geralmente uso o modo "texto" (que foi aquele que enviei antes, pois ele não distorce os relatórios. Você até pode notar que as informações contidas em ambos é a mesma. Estou colocando no anexo o relatório gerado e o erro que deu aqui...

Formatação de Relatório "Contas Patrimoniais"

Enviado: 16 Dez 2015 às 15:07
por Parkeless
Luiz,

O anexo está vazio...

Mas se você gerar o relatório no modo "texto" e rodar a macro, não funciona?

Re: Formatação de Relatório "Contas Patrimoniais"

Enviado: 16 Dez 2015 às 15:16
por luizhalmeida
Segue o anexo novamente...

Com o relatório no modo texto dá o erro que está no anexo...

Formatação de Relatório "Contas Patrimoniais"

Enviado: 16 Dez 2015 às 15:44
por Parkeless
Isso é porque tem uma função inválida no meio, aí o VBA trava... fiz um tratamento pra isso

Entra na planilha que te passei antes, e troca o código que está lá por esse:
Código: Selecionar todos
Sub DeletarLinhas_2()
Dim Linha As Long
Dim valor As String
Dim verificador As String
Application.ScreenUpdating = False

'Verificar e apagar células com erro
On Error GoTo Achouerro
For Linha = Range("A1000000").End(xlUp).Row To 11 Step -1
    verificador = Cells(Linha, 1)
Next Linha
GoTo Início

Achouerro:
    Cells(Linha, 1).ClearContents
    Resume
    
Início:
On Error GoTo 0
For Linha = Range("A1000000").End(xlUp).Row To 11 Step -1
    '1. verificar se é uma conta repetida; se for, deletar e deletar a linha logo acima e abaixo
        If Left(Cells(Linha, 1), 5) = "Conta" Then
            If Application.WorksheetFunction.CountIf(Range("A:A"), Cells(Linha, 1)) > 1 Then
                Cells(Linha, 1).EntireRow.Delete
                Cells(Linha, 1).EntireRow.Delete
                Linha = Linha - 1
                Cells(Linha, 1).EntireRow.Delete
            End If
    '2. verificar se é uma linha sobre conta; se for, só limpar mas deixar
        ElseIf Left(Cells(Linha, 1), 5) = "_____" Then
            Cells(Linha, 1).ClearContents
    '3. Verificar se a coluna C é vazia, e se não for linha logo após "Conta", deletar
        ElseIf Cells(Linha, 3) = "" And Left(Cells(Linha - 1, 1), 5) <> "Conta" Then
            Cells(Linha, 1).EntireRow.Delete
    '4. Eliminar também cabeçalhos
        ElseIf Cells(Linha, 3) = "Filial" Then
            Cells(Linha, 1).EntireRow.Delete
        End If

Next Linha
MsgBox "Formatação efetuada com sucesso!", vbInformation
Application.ScreenUpdating = True
Range("A1").Select
Exit Sub


End Sub
Obs.: Para trocar o código, abra a planilha, dê Alt + F11, vá em Modulo 1 (à esquerda), clique duas vezes e irá abrir o código. Só deletar o que está lá e colar o novo.

Re: Formatação de Relatório "Contas Patrimoniais"

Enviado: 16 Dez 2015 às 16:04
por luizhalmeida
Valeeu! Isso aí!!