Home Excel - Dicas Microsoft Excel VBA Excel VBA - Compara Excel planilha vba compara ítens em duas colunas e lista nao comuns

Excel planilha vba compara ítens em duas colunas e lista nao comuns

E-mail Imprimir PDF

Saberexcel - site das macros

Essa macro do Aplicativo Microsoft Excel VBA(Visual Basic Application), compara lista existente na coluna(A) com a lista na colunad(B), e
retorna uma lista com os números da Lista(coluna(A)), sem os ítens contidos na Coluna(B).
No final, na conclusão da macro, inserí uma fórmula que conta os números comparados com os números relacionados.


Sub relacionar_itens_que_falta()

    Dim a, b, c As Integer
   
    Dim vLista1 As Dictionary
    Dim vLista2 As Dictionary
    Dim vLista3 As New Collection
    Dim vListaItem As Variant
    Dim vCelula1, vCelula2 As Range

    Set vLista1 = New Dictionary
    Set vLista2 = New Dictionary
   
    [resultado].Value = ""
   
    a = Cells(Rows.Count, "A").End(xlUp).Row
   
    For Each vCelula1 In Range("A1:A" & a)
        With
vLista1
            .CompareMode = BinaryCompare
            .Add CStr(vCelula1.Value), CStr(vCelula1.Value)
        End With
    Next
   
    b = Cells(Rows.Count, "B").End(xlUp).Row
   
    For Each vCelula2 In Range("B1:B" & b)
        With
vLista2
            .CompareMode = BinaryCompare
            .Add CStr(vCelula2.Value), CStr(vCelula2.Value)
        End With
    Next
   
    For Each vListaItem In
vLista1
        If Not vLista2.Exists(vListaItem) Then
               On Error Resume Next
               vLista3.Add CStr(vListaItem), CStr(vListaItem)
            On Error GoTo 0
        End If
    Next
   
    c = 1
   
    For Each vListaItem In
vLista3
        Cells(c, "C") =
vListaItem
        c = c + 1
    Next
'essa linha de código abaixo insere uma fórmula que conta os valores da coluna(B) e coluna(C), - concatenando em uma mensagem.
    Range("G2").FormulaR1C1 = _
        "=""Macro executada [ ""&COUNTA(resultado)&"" ] números relacionados na coluna(C), sem os [ ""&COUNTA(R[-1]C[-5]:R[28]C[-5])&"" ]  da coluna(B)"""
    Range("K19").Select
End Sub



Aprenda tudo sobre o Alicativo Microsoft Excel VBA(Visual Basic Application), sozinho, praticando com os produtos didáticos SaberExcel


   Baixe o exemplo de planilha contendo o procedimento acima
vba compara lista colunas retorna lista sem comuns (28.4 KB 2011-02-17 19:46:03)

Última atualização em Qua, 10 de Agosto de 2011 08:22  

Comentários   

 
Guest
# Guest 03-01-2013 13:25
Adorei essa macro...é uma pena que ela não funcione :cry: e o "arquivo" colocado para download de exemplo não existe :-x aparece diversos erros, onde o primeiro é um erro de compilação "O tipo definido pelo usuário não foi definido" o office 2007 não entende "Dictionary" como um objeto válido, se vocês conhecerem alguma solução...

'//==================='
Prezado Valdenor,
obrigado pelo seu comentário,
Esta planilha que voce esta tentando acessar, está disponível
para Registrados, caso queira registrar é extremamente simples
somente usuario e email válido e senha.
Voce ainda não se cadastrou no site por isso não consegue acessar o arquivo. Mas estou lhe enviando via email..
Fique com Deus, paz, saúde, harmonia e Alegria de viver.
Expedito Marcondes.
Responder | Responder com citação | Citar
 
 
Expedito Marcondes
# Expedito Marcondes 03-01-2013 13:59
ARQUIVO MICROSOFT EXCEL VBA COMPARA DADOS COLUNAS E RETORNA EM DADOS COMUNS.
'- - - - - - - - - - - - - - - - - - - -
Prezado Valdenor, boa tarde,
obrigado pelo seu contato,
Valdenor, esse arquivo pede registro, um cadastro simples para acessá-lo
faça seu registro no site, é bem simples somente usuario e senha,
e baixe o arquivo desejado.
A propósito, enviei a planilha para seu email, esta funcionando perfeitamente, quanto ao excel 2007 existem bugs, ainda, se possível
instale o 2010 está sem os bugs do 2007
Fique com Deus, paz, saúde, harmonia e alegria de Viver.
Responder | Responder com citação | Citar
 

Adicionar comentário

"Jamais considere seus estudos como uma obrigação, mas como uma oportunidade invejável para aprender a conhecer a influência libertadora da beleza do reino do espírito, para seu próprio prazer pessoal e para proveito da comunidade." Albert Einstein


Código de segurança
Atualizar

PROMOÇÃO DIDÁTICOS SABEREXCEL



Adquira já o Acesso Imediato
à Area de Membros

Compra Grantida --- Entrega Imediata

Aprenda Excel VBA com Simplicidade de 
códigos e Eficácia, Escrevendo Menos e
Fazendo Mais.

'-------------------------------------'
Entrega Imediata:
+  500 Video Aulas MS Excel VBA
+  35.000 Planilhas Excel e VBA
+  Coleção 25.000 Macros MS Excel VBA
+  141 Planilhas Instruções Loops
+  341 Planilhas WorksheetFunctions(VBA)
+    04 Módulos Como Fazer Excel VBA
+  Curso Completo MS Excel VBA
+  Planilhas Inteligentes


Pesquisa Google SaberExcel

Publicidade Google

<script type="text/javascript"><!--

google_ad_client = "ca-pub-2317234650173689";

/* retangulo 336 x 280 */

google_ad_slot = "0315083363";

google_ad_width = 336;

google_ad_height = 280;

//-->

</script>

<script type="text/javascript"

src="http://pagead2.googlesyndication.com/pagead/show_ads.js">

</script>

Publicidade

RSFirewallProtected


Google Associados

Depoimentos

Adicione Saberexcel Favoritos

 
 

Aprenda tudo sobre o Aplicativo Microsoft Excel VBA

Aprenda tudo sobre o Aplicativo Microsoft Excel VBA(Visual Basic Application), sozinho, com baixo custo, praticando com os produtos didáticos Saberexcel,


   Sobre as WorksheetFunctions Funções de Planilhas que retornam valores do VBA