Página 1 de 1

Macro Ignorar Dados Repetidos 2

Enviado: 11 Out 2019 às 11:37
por Micsterminador
Bom dia,

Utilizo uma Macro do Excel para tratar alguns dados de licitações da minha empresa.
Na aba "Colar e-mail", colo as informações que recebo via e-mail, sem formatação. Depois na aba resumo, utilizo a Macro "Converter Conciliação" para trazer as informações em um formato mais fácil de entender. Gostaria de que a macro não trouxesse informações repetidas, podendo utilizar como parâmetro a informação da coluna "A" "Nº Conlicitação".

Em resumo, ao executar a macro, gostaria que ela não trouxesse licitações às quais já estão na planilha, pois é retrabalho analisar a mesma licitação duas vezes.

Agradeço a atenção.

Re: Macro Ignorar Dados Repetidos 2

Enviado: 11 Out 2019 às 14:28
por Diego100ges
Tenta essa código, executa primeiro a sua macro, para corrigir os dados, e depois que eles estiverem na tabela, executa essa macro:
Código: Selecionar todos
Public Sub ExcluirLinhasDuplicadas()
 
    Dim Col As Integer
    Dim r As Long
    Dim C As Range
    Dim N As Long
    Dim V As Variant
    Dim Rng As Range
 
    On Error GoTo EndMacro
    Application.ScreenUpdating = False
    Application.Calculation = xlCalculationManual
 
    Col = ActiveCell.Column
 
    If Selection.Rows.Count > 1 Then
        Set Rng = Selection
    Else
        Set Rng = ActiveSheet.UsedRange.Rows
    End If
 
    N = 0
    For r = Rng.Rows.Count To 1 Step -1
        V = Rng.Cells(r, 1).Value
        If Application.WorksheetFunction.CountIf(Rng.Columns(1), V) > 1 Then
            Rng.Rows(r).EntireRow.Delete
            N = N + 1
        End If
    Next r
 
EndMacro:
 
    Application.ScreenUpdating = True
    Application.Calculation = xlCalculationAutomatic
 
End Sub

Re: Macro Ignorar Dados Repetidos 2

Enviado: 11 Out 2019 às 23:12
por Jimmy
Olá Micsterminador,

Percebi que esta questão estava sendo tratada em outro tópico, que eu estava participando, mas não sei porque motivos eu não vi sua última postagem, e o tópico acabou ficando sem resposta. Desculpe-me.

Alterei a macro para que a planilha Resumo não seja mais sobreposta a cada processamento. Agora os dados vão sendo acrescentados, e formam um histórico.

A cada execução é deixada uma linha da planilha para separar os blocos processados. Nessa linha constará a data e hora da execução;

Após processar os e-mails, cada licitação é procurada no histórico e descartada caso já exista, ou acrescentada ao histórico caso não exista. Ao descartar uma licitação, seu número e a linha na qual foi encontrada no histórico, são registrados naquela linha separadora.

Teste e dê retorno.

Se esta mensagem colabora para a solução do problema, peço que dê um Like, clicando no botão com o "positivo", acima e a direita.

Jimmy San Juan