Retorne itens exclusivos usando VBA no Microsoft Excel

Índice

Neste artigo, criaremos uma macro para extrair valores exclusivos do intervalo definido.

Os dados brutos para este exemplo consistem em entradas duplicadas de nomes de países no intervalo A7: A21.

Criamos a macro “FindUniqueValues” para extrair valores únicos do intervalo definido. Esta macro pode ser executada clicando no botão “Enviar”. Antes de clicar no botão “Enviar”, temos que especificar o endereço da faixa que contém os dados duplicados na célula H9 e o endereço do destino onde a saída deve aparecer.

Explicação lógica

A macro “FindUniqueValues” usa dois objetos de intervalo como parâmetros de entrada. O primeiro parâmetro define o intervalo que contém os dados duplicados e o segundo parâmetro define a posição da célula inicial que conterá a saída. Esta macro não pode ser chamada diretamente, pois temos que especificar os parâmetros, então criamos a segunda macro “MacroRunning” para chamar a macro.

A macro “MacroRunning” chama a macro “FindUniqueValues” com a entrada do parâmetro pelo usuário.

Explicação do código

SourceRange.AdvancedFilter Action: = xlFilterCopy, _

CopyToRange: = TargetCell, Unique: = True

O método AdvancedFilter do objeto Range é usado para filtrar ou copiar dados do intervalo com base em um determinado critério. Para copiar apenas os valores únicos, temos que definir o parâmetro Unique de AdvancedFilter como True.

Siga abaixo para o código

 Option Explicit Sub FindUniqueValues ​​(SourceRange As Range, TargetCell As Range) 'Usando filtro avançado para extinção de itens únicos no intervalo de origem SourceRange.AdvancedFilter Action: = xlFilterCopy, _ CopyToRange: = TargetCell, Unique: = True End Sub Sub MacroRunning ()' Chamando a macro FindUniqueValues ​​Chame FindUniqueValues ​​(Range (Range ("H9"). Value), Range (Range ("H10"). Value)) End Sub 

Se você gostou deste blog, compartilhe com seus amigos no Facebook. Além disso, você pode nos seguir no Twitter e no Facebook.

Gostaríamos muito de ouvir de você, diga-nos como podemos melhorar nosso trabalho e torná-lo melhor para você. Escreva para nós no site de e-mail

Você vai ajudar o desenvolvimento do site, compartilhando a página com seus amigos

wave wave wave wave wave