Remover células vazias e duplicadas na linha

Fechado
FranChasing - 15 mar 2012 às 01:35
FranChasing Posts 1 Data de inscrição quinta 15 de março de 2012 Status Membro Última visita 15 de março de 2012 - 15 mar 2012 às 11:15
Bom dia,

Girando pela web o que mais encontramos é REMOVER DUPLICADOS POR COLUNA
Meu problema é REMOVER DUPLICADOS NA LINHA.
Veja exemplo de como de ficar o resultado:

ANTES
|01|02|03|01|03|04|
|05|06|05|07|08|06|
|07|08|09|07|09|00|
|11|12|13|11|13|12|

DEPOIS
|01|02|03|04|
|05|06|07|08|
|07|08|09|00|
|11|12|13|

Note que eu quero trocar as células duplicadas na linha, mantendo as não duplicadas...
Tenho uma macro que faz o procedimento mas é selecionando linha por linha e aplicando a macro. Nesse caso pretendo selecionar todas células e aplicar a fórmula ou a macro.

Muito grato !

1 Respostas

FranChasing Posts 1 Data de inscrição quinta 15 de março de 2012 Status Membro Última visita 15 de março de 2012
15 mar 2012 às 11:15
Tenho esta macro que funciona perfeita somente na PRIMEIRA LINHA no restante das linha ocorre remoções indevidas de números repetidos com linhas antereiores. Veja exemplo das remoções equivocadas e no final a rotina da macro

ANTES DE REMOVER
01 02 03 01 04 05 02 03 06 07
08 09 10 02 11 12 09 11 13 02
14 15 16 17 14 11 18 19 16 11


DEPOIS DE REMOVER (ERRADAS 2ª e 3ª LINHAS)
01 02 03 04 05 06 07
08 09 10 11 12 13
14 15 16 17 18 19


COMO DEVE SER
01 02 03 04 05 06 07
08 09 10 02 11 12 13
14 15 16 17 11 18 19


Note que a primeira linha está PERFEITA
A segunda linha ocorreu de remover os dois números 02 quando era pra remover somente UM número 02
Na terceira linha ocorreu de remover os números 11 duas vezes quando era pra remover somente UM nº 11
Por quê isto ocorre ? Porque qualquer número que se repete com linhas anteriores são eliminados todos da linha. Entendido ?


'Macro

Sub RemoverDuplicados()
Dim Colecao As New Collection
Dim Intervalo As Range
Dim Celula

On Error GoTo ERRO
Set Intervalo = ActiveSheet.UsedRange

For Each Celula In Intervalo
Celula.Select
Colecao.Add Celula.Value, CStr(Celula.Value)
Next
Exit Sub
ERRO:
ActiveCell.ClearContents
Resume Next
End Sub


MUITO GRATO !!!

Assine nossa newsletter!

Assine nossa newsletter!