Beruflich Dokumente
Kultur Dokumente
VBA(Excel)Copiandodadosentreplanilhas
Eu estou usando o Microsoft Office Excel 2007 e sistema operacional Windows 8, e portanto o cdigo deste artigo foi
testado somente nesta verso e ambiente.
Antes de prosseguir eu sugiro que voc leia os seguintes artigos da seo VBA do site Macoratti .net
VBA Preparando o ambiente para desenvolvimento com o Excel
Plula de VBA Tipos de Aplicao (VBAExcel)
VBA Criando um projeto no Excel
Os recursos usados no projeto deste artigo foram:
Microsoft Excel verso 2007;
Conhecimentos bsicos sobre planilhas , clulas, e Visual Basic;
Antes de iniciar temos que realizar duas configuraes no Microsoft Excel 2007:
Ativar a guia do desenvolvedor;
Habilitar a execuo de macros;
Obs: A necessidade de habilitar a execuo de macros que por padro, o Excel coloca um nvel de segurana mais
elevado pois cdigos maliciosos podem ser executados em scripts atravs de macros no Excel.
Vamos ativar a guia do desenvolvedor e logo em seguida habilitar a execuo de macros.
Para ativar a guia do desenvolvedor (se ainda no estiver ativa) siga os seguintes passos:
Abra o Excel 2007 e ative o Menu principal de opes clicando no boto superior a esquerda, conforme a figura
abaixo;
http://www.macoratti.net/15/04/vba_cdata1.htm
1/7
20/06/2015
VBA(Excel)Copiandodadosentreplanilhas
A seguir clique na guia Opes do Excel para abrir a janela Opes do Excel;
Nesta janela, selecione o item Mais Usados e a seguir marque o item Mostrar guia Desenvolvedor na Faixa de
Opes e clique no boto OK;
No menu do Excel selecione a guia do Desenvolvedor e em seguida clique em Segurana de Macro;
Na janela Central de Confiabilidade selecione a opo Configuraes de Macro e marque o item para habilitar
todas as macros conforme a figura abaixo:
http://www.macoratti.net/15/04/vba_cdata1.htm
2/7
20/06/2015
VBA(Excel)Copiandodadosentreplanilhas
Pronto , feito isso j podemos iniciar o desenvolvimento da aplicao VBA no Excel 2007.
http://www.macoratti.net/15/04/vba_cdata1.htm
3/7
20/06/2015
VBA(Excel)Copiandodadosentreplanilhas
Os dados foram copiados da internet e representa a tabela dos 5 primeiros colocados do campeonato brasileiro de
futebol de 2014.
Nota: Voc pode usar qualquer dados na planilha este foi apenas um exemplo.
Dessa forma a planilha Plan2 ser a planilha origem a partir da qual desejamos copiar as informaes para a planilha
Plan1 a partir da clula A1.
4/7
20/06/2015
VBA(Excel)Copiandodadosentreplanilhas
Sub copiarDadosEntrePlanilhas()
Sheets("Plan2").Range("A1:J6").Copy
Destination:=Sheets("Plan1").Range("1")
End Sub
Acabamos de criar uma macro que ir ser usada para copiar os dados entre as planilhas Plan2 e Plan1.
Estamos usando o mtodo Range.Copy que copia o intervalo para o intervalo especificado ou para a rea de
Transferncia.
Como exemplo o cdigo a seguir copia os dados da clula A1:D4 de Plan1 para as clulas E5 de Plan2 :
Worksheets("Plan1").Range("A1:D4").Copy destination:=Worksheets("Plan2").Range("E5")
O que uma macro?
Uma macro uma coleo de comandos que voc pode aplicar com um nico clique. As macros podem automatizar
quase tudo que seja possvel executar no programa que voc est usando e at mesmo permitem fazer coisas que
talvez voc no soubesse que fossem possveis.
As macros so programao, mas para uslas, voc no precisa ser um desenvolvedor e nem mesmo ter conhecimento
de programao. A maioria das macros que voc pode criar nos programas do Office escrita em uma linguagem
chamada Microsoft Visual Basic for Applications, ou VBA.
Em muitos programas do Office, voc pode criar uma macro gravando uma srie de aes ou escrevendo a macro. Foi
isso que fizemos : escrevemos uma macro que ser usada para copiar dados.
Agora para usar a macro criada vamos retornar nossa planilha Excel.
Pressione ALT+F11 novamente, estando no editor Visual Basic, para retornar planilha Excel.
Usando a planilha Plan1 clique na guia Desenvolvedor e a seguir na opo Inserir e selecionando o controle de
formulrio Boto:
Aps selecionar o Boto coloqueo na planilha Excel. Fazendo isso de imediato ser aberta a janela atribuir macro,
exibindo a macro que criamos no Mdulo.
Selecione a macro CopiarDadosEntrePlanilhas e clique em OK;
Com isso atribumos a macro CopiarDadosEntrePlanilhas criada ao boto de comando da planilha:
http://www.macoratti.net/15/04/vba_cdata1.htm
5/7
20/06/2015
VBA(Excel)Copiandodadosentreplanilhas
Pronto ! agora podemos abrir a planilha Excel e clicar no boto para realizar a cpia dos dados da planilha Plan2 para
a planilha Plan1 conforme abaixo:
Dessa forma mostramos como podemos usar cdigo VBA para realizar a cpia entre duas planilhas distintas no Excel
2007.
Pegue a planilha com o cdigo VBA aqui:
CopiandoDadosEntrePlanilhas.zip
Jesus lhes respondeu, e disse: A minha doutrina no minha, mas daquele que me enviou.
Se algum quiser fazer a vontade dele, pela mesma doutrina conhecer se ela de Deus, ou se eu falo de mim
mesmo.
Quem fala de si mesmo busca a sua prpria glria; mas o que busca a glria daquele que o enviou, esse
verdadeiro, e no h nele injustia.
Joo 7:1618
Veja os Destaques e novidades do SUPER DVD Visual Basic (sempre atualizado) :
clique e confira !
Quer migrar para o VB .NET ?
http://www.macoratti.net/15/04/vba_cdata1.htm
6/7
20/06/2015
VBA(Excel)Copiandodadosentreplanilhas
Veja mais sistemas completos para a plataforma .NET no Super DVD .NET ,
confira...
Curso Bsico VB .NET Vdeo Aulas
Quer aprender C# ??
Chegou o Super DVD C# com exclusivo material de suporte e vdeo aulas
com curso bsico sobre C#.
Curso C# Basico Video Aulas
http://www.macoratti.net/15/04/vba_cdata1.htm
7/7