Usuário com melhor resposta
VBA para Juntar compilar guias em uma somente

Pergunta
-
Boa Tarde , eu tenho um código que precisa ser consertado, mas eu não sei como fazer, este código juntas todas as guias em uma só:
Sub Imhotep() Dim cadas As Integer Dim noval As Integer Dim i As Integer Dim j As Integer For i = 1 To Sheets.Count - 1 noval = Plan12.Range("A65536").End(xlUp).Offset(1, 0).Row - 1 Sheets(i).Select cadas = Range("A65536").End(xlUp).Offset(1, 0).Row - 1 For j = 2 To cadas noval = noval + 1 Plan12.Range("A" & noval).Value = Range("A" & j).Value Plan12.Range("B" & noval).Value = Range("B" & j).Value Plan12.Range("C" & noval).Value = Range("C" & j).Value Next j Next i Sheets(i).Select End Sub
O que preciso é o seguinte copiar da plan2 em diante até plan11
Todos estes dados serão compilados na Plan12, ela funciona só que eu não quero os dados da plan1 e na outras plan não copia as Celulas A1 e B1, Muito obrigado a quem me responder, depois eu dou o retorno para informar se deu certo ok!
Respostas
-
Poderia postar seu código novamente usando o bloco de código? Para inserir um bloco de código, é só pressionar o botão que tem o símbolo <> junto com o cabeçalho de formatação dessa caixa de resposta.
Felipe Costa Gualberto - http://www.ambienteoffice.com.br
- Marcado como Resposta madaraujo terça-feira, 18 de setembro de 2012 02:49
-
-
Todas as Respostas
-
Poderia postar seu código novamente usando o bloco de código? Para inserir um bloco de código, é só pressionar o botão que tem o símbolo <> junto com o cabeçalho de formatação dessa caixa de resposta.
Felipe Costa Gualberto - http://www.ambienteoffice.com.br
- Marcado como Resposta madaraujo terça-feira, 18 de setembro de 2012 02:49
-
Sub Imhotep() Dim cadas As Integer Dim noval As Integer Dim i As Integer Dim j As Integer For i = 1 To Sheets.Count - 1 noval = Plan3.Range("A65536").End(xlUp).Offset(1, 0).Row - 1 Sheets(i).Select cadas = Range("A65536").End(xlUp).Offset(1, 0).Row - 1 For j = 2 To cadas noval = noval + 1 Plan3.Range("A" & noval).Value = Range("A" & j).Value Plan3.Range("B" & noval).Value = Range("B" & j).Value Plan3.Range("C" & noval).Value = Range("C" & j).Value Next j Next i Sheets(i).Select End Sub
Pois não obrigado! -
O código consertado seria algo como mostrado abaixo:
Sub Imhotep() Dim cadas As Integer Dim noval As Integer Dim i As Integer Dim j As Integer For i = 1 To Sheets.Count - 1 cadas = Sheets(i).Cells(Sheets(i).Rows.Count, "A").End(xlUp).Row For j = 2 To cadas noval = noval + 1 Plan3.Cells(noval, "A") = Sheets(i).Cells(j, "A") Plan3.Cells(noval, "B") = Sheets(i).Cells(j, "B") Plan3.Cells(noval, "C") = Sheets(i).Cells(j, "C") Next j Next i Sheets(Sheets.Count).Select Sheets(Sheets.Count).Activate End Sub
No entanto, não recomendo utilizar o mesmo, pois ele não serve pra qualquer pasta de trabalho. Se quiser uma solução mais flexível, veja: http://www.ambienteoffice.com.br/excel/concatenar_varias_planilhas/
Felipe Costa Gualberto - http://www.ambienteoffice.com.br
-
-
Troque
cadas = Sheets(i).Cells(Sheets(i).Rows.Count, "A").End(xlUp).Row
por
cadas = Sheets(i).Cells(Sheets(i).Rows.Count, "A").End(xlUp).Row + 1
. Troque também:
For j = 2 To cadas
por
For j = 1 To cadas
Felipe Costa Gualberto - http://www.ambienteoffice.com.br
-