Às vezes, torna-se um trabalho de rotina copiar dados de várias planilhas para a mesma coluna. Esta etapa pode ser evitada usando a automação. Se você deseja fazer uma planilha consolidada após copiar os dados de uma coluna de cada planilha em uma planilha, então você deve ler este artigo.
Neste artigo, criaremos uma macro para copiar dados de uma coluna específica e colar em uma nova planilha.
Os dados brutos para este exemplo consistem em dados de funcionários na forma de uma pasta de trabalho do Excel contendo três planilhas com os detalhes departamentais, pessoais e de contato dos funcionários.
Para copiar dados de planilhas diferentes em uma nova planilha, criamos uma macro “CopyColumns”. Esta macro pode ser executada clicando no botão “Executar macro” na planilha “Principal”.
A macro “CopyColumns” irá inserir uma nova planilha chamada “Master” após a planilha “Principal”. A planilha “Master” conterá dados consolidados de todas as planilhas.
Explicação do código
Worksheets.Add (após: = Worksheets ("Principal"))
O código acima é usado para inserir novas planilhas após a planilha “Principal”.
Se Source.Name "Master" e Source.Name "Main" então
Fim se
O código acima é usado para restringir a cópia dos dados das planilhas “Master” e “Principal”.
Source.UsedRange.Copy Destination.Columns (Last)
O código acima é usado para copiar dados da planilha de origem para a planilha de destino.
Para cada fonte neste livro de trabalho.Folhas de trabalho
Se Source.Name = "Master" então
MsgBox "A planilha mestre já existe"
Sair do Sub
Fim se
Próximo
O código acima é usado para verificar se a planilha “Master” já existe na pasta de trabalho. A macro interromperá a execução se a planilha “Master” já existir na pasta de trabalho.
Siga abaixo para o código
Option Explicit Sub CopyColumns () Dim Source As Worksheet Dim Destination As Worksheet Dim Last As Long Application.ScreenUpdating = False 'Verificando se a planilha "Mestre" já existe na pasta de trabalho Para Cada Fonte Nesta Pasta.Folhas Se Source.Name = "Mestre" Então MsgBox "Folha mestre já existe" Exit Sub End If Next 'Inserindo novas planilhas na pasta de trabalho Set Destination = Worksheets.Add (after: = Worksheets ("Main"))' Renomeando a planilha Destination.Name = "Master" 'Looping por meio das planilhas na pasta de trabalho Para Cada Fonte In ThisWorkbook.Worksheets If Source.Name "Master" And Source.Name "Main" Then 'Localizando a última coluna da planilha de destino Last = Destination.Range ("A1"). SpecialCells ( xlCellTypeLastCell) .Column If Last = 1 Then 'Colando os dados na planilha de destino Source.UsedRange.Copy Destination.Columns (Last) Else Source.UsedRange.Copy Destination.Columns (Last + 1) End If End If Next Columns.AutoFit Application.ScreenUpdating = True 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