- 02 Jan 2019 às 16:37
#39667
Boa tarde a todos!
A Macro que utilizo foi criada por um membro do fórum em um outro tópico. Ela serve para "limpar" as informações em demasia antes de eu enviar o relatório ao meu cliente. Acontece que o meu sistema contábil alterou a forma como o relatório é exportado, eu já fiz algumas modificações, mas ainda preciso de ajuda.
Com o relatório anexo, após executar a macro, preciso:
1. Que sejam deletadas as linhas que tenham na Coluna "A" o termo "Continuação..."
2. Sempre ao final de todos os relatórios ficam duas linhas: "31/12/2018 | Saldo Atual..." Preciso que essas linhas com o termo "Saldo Atual" também sejam eliminadas. http://prntscr.com/m2am0e
Obs.: O relatório emitido é em csv, mas como fiz algumas modificações salvei em xlsx.
Obrigado desde já!
Macro:
A Macro que utilizo foi criada por um membro do fórum em um outro tópico. Ela serve para "limpar" as informações em demasia antes de eu enviar o relatório ao meu cliente. Acontece que o meu sistema contábil alterou a forma como o relatório é exportado, eu já fiz algumas modificações, mas ainda preciso de ajuda.
Com o relatório anexo, após executar a macro, preciso:
1. Que sejam deletadas as linhas que tenham na Coluna "A" o termo "Continuação..."
2. Sempre ao final de todos os relatórios ficam duas linhas: "31/12/2018 | Saldo Atual..." Preciso que essas linhas com o termo "Saldo Atual" também sejam eliminadas. http://prntscr.com/m2am0e
Obs.: O relatório emitido é em csv, mas como fiz algumas modificações salvei em xlsx.
Obrigado desde já!
Macro:
Código: Selecionar todos
Option Explicit
Sub DeletarLinhasV2()
Dim linha As Long, coluna As Long, i As Long
Application.ScreenUpdating = False
For linha = Range("C1000000").End(xlUp).Row To 1 Step -1
If Mid(Cells(linha, 2), 3, 1) = "/" Then: GoTo Jump
If Left(Cells(linha + 1, 3), 5) <> "Conta" Then
Do While Cells(linha, 3) = "" Or Cells(linha, 2) = "Histórico" Or Left(Cells(linha, 2), 6) = "Centro"
Cells(linha, 3).EntireRow.Delete
If Left(Cells(linha + 1, 3), 5) = "Conta" Then: GoTo Jump
Loop
Jump:
End If
Next linha
'Parte 2
For linha = Range("A1000000").End(xlUp).Row To 1 Step -1
If Cells(linha, 2) = "" Then
If Left(Cells(linha, 3), 5) <> "Conta" And Left(Cells(linha + 1, 3), 5) <> "Conta" Then
Cells(linha, 2).EntireRow.Delete
End If
ElseIf Cells(linha, 2) = "Histórico" Then
Cells(linha, 2).EntireRow.Clear
End If
Next linha
Range("F:F").Delete
Range("A:A").Delete
Range("2:2").Delete
Range("1:1").Delete
Range("1:1").Insert
Application.ScreenUpdating = True
End Sub
Você não está autorizado a ver ou baixar esse anexo.
Atenciosamente,
Luiz Henrique Rodrigues de Almeida
Se minha resposta foi útil, não esqueça de agradecer clicando em Obrigado
Luiz Henrique Rodrigues de Almeida
Se minha resposta foi útil, não esqueça de agradecer clicando em Obrigado