0143-Pesquisando valores repetidos

Eis uma dúvida postada no nosso fórum: Pesquisando valores repetidos,

Boa tarde,
Prezados colegas estou precisando de uma ajuda, veja bem. Exemplo:
tenho a coluna A e B, na A tem numero na B valores, ok?, e com isso tenho a Coluna D e E, na D numeros e na E valores, o que preciso:
Uma macro para conferir as colunas, onde se na A tem um numero x e valor Y, ele vai “varrer” as colunas D e E para achar uma linha igual com numero e valor correspondente. Lembrando que vão ter varios iguais, e desse a mensagem na linha da frete na coluna F “valor repetido”, deu para entender?
Desde ja obrigado
Sds

Partindo deste questionamento, vamos verificar como é possível resolver este tipo de problema utilizando fórmulas e macros.

A imagem a seguir nos permite visualizar o problema:

Pela condição imposta pelo problema, um registro será considerado duplicado quando os valores de uma linha das colunas D e E, tiverem um correspondente nas colunas A e B respectivamente. Podemos então pesquisar estes valores utilizando a função CORRESP() e se as linhas retornadas forem iguais temos um par repetido. Eis a fórmula resultante:

=SE(CORRESP($D2;$A$2:$A$11;0)=CORRESP($E2;$B$2:$B$11;0);”Valor repetido”;””)

A fórmula acima exibirá uma mensagem de erro se o valor pesquisado não for localizado. Para evitar isto, fizemos esta outra versão:

=SEERRO(

SE(CORRESP($D2;$A$2:$A$11;0)=CORRESP($E2;$B$2:$B$11;0);”Valor repetido”;””)

;“”)

A planilha assume então este aspecto:

Este mesmo princípio pode ser utilizado para a criação de um código de macro. Será necessário um loop para percorrer as linhas não vazias das colunas D e E, comparando os valores com aqueles das colunas A e B. Quando o critério de igualdade for satisfeito devemos inserir na coluna F a mensagem de que se trata de um valor repetido.

Eis o código desenvolvido:

Sub PesquisarRepetidos()

Dim i       As Integer
Dim ultLin  As Integer
Dim pesqD   As Integer
Dim pesqE   As Integer
Dim wf      As WorksheetFunction
Dim rgColD  As Range
Dim rgColE  As Range

Set wf = Application.WorksheetFunction

'Definir a última linha preenchida da coluna D
ultLin = Cells(Rows.Count, "D").End(xlUp).Row

'Definir os intervalo com os valores de referência
Set rgColD = Range("A1").CurrentRegion.Columns(1)
Set rgColE = Range("A1").CurrentRegion.Columns(2)


'Ignorar erros durante a execução
On Error Resume Next

'Loop para percorrer as células das colunas D e E
For i = 2 To ultLin
'Pesquisar o valor da célula da coluna D no intervalo rgColD
pesqD = wf.Match(Cells(i, "D"), rgColD, 0)
'Pesquisar o valor da célula da coluna E no intervalo rgColE
pesqE = wf.Match(Cells(i, "E"), rgColE, 0)
'Se os resultados das pesquisas forem iguais
'(valores na mesma linha), escrever "Valor repetido" na
'célula correspondente da coluna F
If pesqD = pesqE Then Cells(i, 6) = "Valor repetido"
Next i
End Sub

Acesse o arquivo com as fórmulas e o código de macro: Pesquisar repetidos

Anúncios

In Excel We Trust

Marcado com: , , , , ,
Publicado em Nível: Intermediário
2 comentários em “0143-Pesquisando valores repetidos
  1. Olá pessoal. Este código funcionou perfeitamente com valores (número, texto, etc.) nas células. Porém, utilizei-o para comparar valores que são resultados de PROCV na célula, e deste jeito não funcionou.
    Poderiam por gentileza me auxiliar? Obrigado!

  2. Olá, Eduardo. Se puder detalhar o que precisa, terei prazer em ajudar.
    Abraços,

    Adilson Soledade

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

Visitas dos usuários
  • 2,074,858

Clique para assinar este blog e receber notificações de novos artigos por email.

Junte-se a 1.536 outros seguidores

Aumente sua interação

Siga-nos do twitter (@usuariosdoexcel).

Acesse o nosso fórum e compartilhe as suas dúvidas.

Curta nossa página no Facebook.

Junte-se ao grupo do LinkedIn.

Visite-nos utilizando o seu smartphone ou tablet.

Recomende este Blog
Visualizar notícias
Site monitorado:
Real Time Web Analytics

Clicky

%d blogueiros gostam disto: