Excel - Compare duas listas e mude a cor da linha

Questão

Eu tenho duas pastas de trabalho diferentes; digamos a pasta de trabalho 1 e a pasta de trabalho2. Em ambas as pastas de trabalho, tenho uma coluna com códigos de barras.

Eu preciso de um VBA para verificar as duas colunas de código de barras em pastas de trabalho e se encontrar correspondências para criar uma nova pasta de trabalho e copiar toda a linha da pasta de trabalho 1 e usar a mesma cor do código de barras da célula na pasta de trabalho 2.

Solução

Estou assumindo que as colunas de código de barras, tanto a folha 1 como a folha 2, são as mesmas

então tente este código

no início, quando você executar o código, o código solicitará uma entrada sobre a letra da coluna do código de barras. você pode digitar a letra da coluna, por exemplo, G e clique em ok (no canto superior direito):

A macro é

 Sub teste () Dim col Como String, r Como Range, c Como Range, cfind Como Range Dim x, y Como Integer col = InputBox ("digite a coluna LETTER na qual o código de barras é inserido, por exemplo, G") On Error Resume Next Com Worksheets ("sheet2") Defina r = Range (.Cells (2, col), .Cells (2, col) .End (xlDown)) Para Cada c Em rx = c.Value Com Planilhas ("sheet1"). Colunas (col & ":" & col) Set cfind = .Cells.Find (o que: = x, lookat: = xlWhole) Se cfind é nada, então vá para nnext y = cfind.Interior.ColorIndex cfind.EntireRow.Copy com planilhas ( "sheet3") .Células (Rows.Count, "A"). End (xlUp) .Offset (1, 0) .PasteSpecial .Cells (Rows.Count, col) .End (xlUp) .Interior.ColorIndex = y End Com Fim Com nnext: Próximo c End With End Sub 

Nota

Graças a venkat1926 por esta dica no fórum.

Artigo Anterior Próximo Artigo

Principais Dicas