Gostaria de comparar duas planilhas do Excel
Ambos têm as mesmas colunas, na mesma ordem, mas não as mesmas linhas.
Eu tenho uma planilha com 1.000 linhas e 50 colunas, incluindo um ID exclusivo para cada linha e dados pessoais (endereço, número de telefone etc.).
Quero compará-lo com a mesma base extraída há um ano.
Meu objetivo é conhecer todas as alterações (por exemplo, alguém que mudou de endereço).
Eu tentei com planilha (como explicado aqui: Compare dois arquivos do Excel ), mas não funciona porque no meu "novo" arquivo tenho novas linhas e tenho algumas linhas no arquivo antigo que não estão nas novas.
A planilha é comparada com o número da linha do Excel. É possível comparar com a primeira coluna (ID exclusivo)?
Aqui está um exemplo muito simplificado: https://filebin.net/g4w98251y9mfwug6
Existem duas planilhas representando minhas duas planilhas.
Como você pode ver, ambos têm as mesmas colunas, mas:
- Existem linhas nas duas folhas sem alterações (todas as linhas são iguais)
- Existem linhas nas duas folhas, mas há alterações (em laranja no meu exemplo)
- Existem linhas que estão apenas na planilha de dezembro (não preciso identificar essas linhas)
- Existem linhas que estão apenas na planilha de janeiro (em laranja no meu exemplo)
A cor laranja é exatamente o que eu quero, mas neste exemplo eu posso fazê-lo manualmente: comparando dezembro e janeiro. Nas planilhas reais, não posso fazê-lo manualmente, pois há muitas alterações, dados, linhas, colunas etc., e farei isso mensalmente.
Existe apenas uma coluna que nunca pode mudar: a coluna A.
Respostas:
É conveniente que sua planilha use 50 colunas, porque isso significa que as colunas 51 e 52 estão disponíveis. Seu problema é facilmente resolvido com o uso de uma "coluna auxiliar", que podemos colocar na coluna
AZ
(que é a coluna 52). Eu vou assumir que a linha 1 em cada uma de suas folhas contém cabeçalhos (as palavrasID
,Name
,Address
, etc.), assim você não precisa comparar os (desde suas colunas estão na mesma ordem em ambas as folhas). Também assumirei que oID
(identificador exclusivo) está na colunaA
. (Caso contrário, a resposta se torna um pouco mais complicada, mas ainda assim bastante fácil.) Na célulaAZ2
(a coluna disponível, na primeira linha usada para dados), digitelistando todas as células de
B2
atravésAX2
.&
é o operador de concatenação de texto; portanto, seB2
contémAndy
eC2
contémNew York
,B2&C2
será avaliado comoAndyNew York
. Da mesma forma, a fórmula acima concatenará todos os dados de uma linha (excluindo oID
), fornecendo um resultado que pode ser algo como isto:A fórmula é longa e complicada de digitar, mas você só precisa fazer uma vez (mas veja a nota abaixo antes de fazê-lo). Eu mostrei isso
AX2
porque a colunaAX
é a coluna 50. Naturalmente, a fórmula deve cobrir todas as colunas de dados que não sejamID
. Mais especificamente, deve incluir todas as colunas de dados que você deseja comparar. Se você tem uma coluna para a idade da pessoa, isso será (automaticamente?) Diferente para todos, todos os anos, e você não deseja que isso seja relatado. E, claro, a coluna auxiliar, que contém a fórmula de concatenação, deve estar em algum lugar à direita da última coluna de dados.Agora selecione a célula
AZ2
e arraste / preencha todas as 1000 linhas. E faça isso nas duas planilhas.Finalmente, na planilha em que você deseja que as alterações sejam destacadas (acho que, pelo que você diz, que é a planilha mais recente), selecione todas as células que deseja destacar. Eu não sei se isso é apenas coluna
A
, ou apenas colunaB
, ou a linha inteira (ou seja,A
atravésAX
). Selecione essas células nas linhas 2 a 1000 (ou onde quer que seus dados possam chegar) e vá para “Formatação condicional” → “Nova regra…”, selecione “Use uma fórmula para determinar quais células formatar” e digitena caixa "Formatar valores em que esta fórmula é verdadeira". Isso pega o
ID
valor da linha atual da planilha atual ("janeiro de 2018") (na célula$A2
), procura-o na colunaA
da planilha anterior ("dezembro de 2017"), obtém o valor dos dados concatenados dessa linha e o compara para o valor de dados concatenados nesta linha. (É claro queAZ
é a coluna auxiliar,52
é o número da coluna da coluna auxiliar e1000
é a última linha da planilha “Dezembro de 2017” que contém dados - ou um pouco mais altos; por exemplo, você pode entrar em1200
vez de se preocupar em ser exato.) Em seguida, clique em “Formatar” e especifique a formatação condicional que deseja (por exemplo, preenchimento de laranja).Eu fiz um exemplo com apenas algumas linhas e apenas algumas colunas de dados, com a coluna auxiliar na coluna
H
:Observe que a linha de Andy é laranja, porque ele se mudou de Nova York para Los Angeles, e a linha de Debra é laranja, porque ela é uma nova entrada.
Nota: Se uma linha pode ter valores como
the
ereact
em duas colunas consecutivas, e isso pode mudar no ano seguinte parathere
eact
, isso não seria relatado como uma diferença, porque estamos apenas comparando o valor concatenado e que (thereact
) é o mesmo nas duas folhas. Se você estiver preocupado com isso, escolha um caractere que provavelmente nunca estará nos seus dados (por exemplo,|
) e insira-o entre os campos. Portanto, sua coluna auxiliar conteriaresultando em dados que podem ser assim:
e a alteração será relatada porque
the|react
≠there|act
. Você provavelmente deveria estar preocupado com isso, mas, com base no que suas colunas realmente são, você pode ter motivos para ter certeza de que isso nunca será um problema.Depois de conseguir isso, você pode ocultar as colunas auxiliares.
fonte
Vá para a guia Exibir e clique em Nova janela. Vá para a nova janela e clique lado a lado. Você pode sincronizar a rolagem clicando em Rolagem Síncrona. Verifique a imagem em anexo:
A rolagem síncrona oferece a vantagem de rolar diferentes planilhas simultaneamente. Se você alternar o botão, você poderá visualizar os dois juntos e rolar apenas uma planilha.
fonte
Ok, então você pode fazer uma de duas coisas.
1.- A solução OOTB é ir para "Dados" -> "Ferramentas de dados" -> "Excluir (esta é a tradução direta do espanhol) duplicadas". Dessa forma, é necessário anexar as duas tabelas e você terá apenas os dados que foram alterados e apenas únicos. Portanto, para filtrar o uso
CountIf
de seus uniqueids, desmarque o que foi contado como 1. Encomende por uniqueId e você verá claramente o que foi alterado.2.-Use esta fórmula
IF(Index("rangetoreturn";Match("CellofUniqueID";"Rangeofuniqueidtolookinto";0))<>"OneOftheCellthatcontainsthesameasRangeToReturn";"Info Has Changed";"InfoHasNotChanged")
Esta fórmula pode ser draged para a direita e para baixo. Portanto, você obterá uma tabela com a condição if, com a mesma quantidade de linhas da tabela "CellofUniqueID". A posição de "As informações foram alteradas" indicará qual célula na outra tabela alterou seu conteúdo. Portanto, use esta fórmula em uma nova planilha e crie uma nova tabela. Em seguida, veja os filtros e desmarque "InfoHasNotChanged" (ou qualquer outra palavra que você deseja usar).
"rangetoreturn" e "Rangeofuniqueidtolookinto" são de uma tabela (ou planilha) e "CellofUniqueID" é da outra tabela.
Felicidades
fonte
CountIf
e filtrar por 2 ocorrências. Quando houver 1 ocorrência, as informações não foram alteradas. Por fim, faça o pedido pelo seu ID exclusivo. Também jogue uma bandeira em uma nova coluna, para que você saiba de qual tabela suas informações vieram. Agora você pode ver claramente quais são as diferenças