Usuário com melhor resposta
Loop - Arquivos do Excel

Pergunta
-
Bom dia Pessoal,
Possuo o seguinte código :
Windows("1.xls").Activate
Range("A1:C50").Select
Selection.Copy
Windows("Resumo.xls").Activate
Range("A1").Activate
Selection.Paste
Windows("2.xls").Activate
Range("A1:C50").Select
Selection.Copy
Windows("Resumo.xls").Activate
Range("A51").Activate
Selection.Paste
e isso se repete até a planilha 200.
Ele sempre busca as informações nas Planilhas 1, 2, 3, 4, 5 (.xls) e assim por diante e copia uma certa área de informações para uma outra planilha (Resumo.xls).
Como faço para ele, depois de ler a planilha 1, ir para a 2 e 3, sem eu ter que digitar o Windows("1.xls").Activate toda vez ?
Obrigado e Abraços!!
Respostas
-
cara deu erro de sintaxe pq faltou um espaço.....lembrando que vc precisará estar com todas as planilhas abertas, o codigo abaixo eu testei e funcionou, já com o incremento de colar de 50 em 50 linhas.
se a resposta lhe ajudou por favor marque como útil....................
i = 1
Do While i <= 200
Windows(i & ".xls").Activate
ActiveCell.Range("A1:C50").Select
Selection.Copy
Windows("Resumo.xls").Activate
ActiveCell.PasteSpecial
Range("a1").Select
Selection.End(xlDown).Select
ActiveCell.Offset(1, 0).Activate
i = i + 1
Loop
- Marcado como Resposta john.law terça-feira, 1 de junho de 2010 23:14
Todas as Respostas
-
-
Fernando,
Ele mostra a linha Windows(i&".xls").Activate com erro de sintaxe, vou tentar dar uma fuçada aqui.
Fazendo outra pergunta, tem como eu fazer com que ele vá colocando os Valores na outra planiha de 50 em 50 linhas, tipo..
Range("A1").Select
Range("A51").Select
Range("A101").Select
...
Eu imagino que devo setar outra variável e seu valor estar inserido na linha do código que seleciona o local que vai receber a informação copiada... mas não sei como fazer isso...
Valeu!
-
cara deu erro de sintaxe pq faltou um espaço.....lembrando que vc precisará estar com todas as planilhas abertas, o codigo abaixo eu testei e funcionou, já com o incremento de colar de 50 em 50 linhas.
se a resposta lhe ajudou por favor marque como útil....................
i = 1
Do While i <= 200
Windows(i & ".xls").Activate
ActiveCell.Range("A1:C50").Select
Selection.Copy
Windows("Resumo.xls").Activate
ActiveCell.PasteSpecial
Range("a1").Select
Selection.End(xlDown).Select
ActiveCell.Offset(1, 0).Activate
i = i + 1
Loop
- Marcado como Resposta john.law terça-feira, 1 de junho de 2010 23:14