Notifications
Clear all

copiar planilha para outra

8 Posts
3 Usuários
0 Reactions
2,169 Visualizações
(@rodrigojacinto)
Posts: 73
Estimable Member
Topic starter
 

Boa noite
Tenho um comando simples de copiar ops dados de uma planilha para outra planilha, porem esse codigo so funciona se a planilha que ira receber os dados estiver aberta, como faço para que isso nao precise acontecer?

Sub Copia_Cola()
Workbooks("PLANILHA_ORIGEM").Worksheets("Plan1").Range("A1:ZZ3000").Copy Destination:=Workbooks("PLANILHA_DESTINHO").Worksheets("plan1").Range("A1")
End Sub

 
Postado : 03/06/2012 8:39 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa tarde!!

Veja um exemplo destinto, tente adaptar, também use a pesquisa do fórum!!

Fonte: http://www.vbforums.com/showthread.php?t=510652

Sub Copy()
Dim wbk As Workbook

strFirstFile = "c:hack.xls"
strSecondFile = "c:vbf.xls"

Set wbk = Workbooks.Open(strFirstFile)
With wbk.Sheets("Data")
    Range("G14").Copy
End With

Set wbk = Workbooks.Open(strSecondFile)
With wbk.Sheets("MyDate")
    Range("E16").PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
        False, Transpose:=False
End With

End Sub
 
Postado : 04/06/2012 11:33 am
(@rodrigojacinto)
Posts: 73
Estimable Member
Topic starter
 

Boa tarde
nao consegui adaptar, pois diz que a pasta ja esta aberta, e no caso esse comando estaria dentro da palnilha de PANILHA_ORIGEM , ou seja eu teria que estarr com ela em aberto, e mesmo assim se dou ok, nao copia as informações...

 
Postado : 04/06/2012 12:39 pm
(@ericaffj)
Posts: 38
Trusted Member
 

Tambem tentei e nao deu certo, anexo os modelos....

tenho duas planilhas origem e destino, gostaria de enviar as informações da planilha origem para destino, por meio de um comando de um botao do usuario, segue anexo as planilha onde mostro oque preciso...
Fiz uma conexao entre as duass planilhas, porem a planilha que recebe os dados tem formulas na colunas seguintes as colunas onde viram as infrmações que preciso, ai nao da certo, preciso tipo que copie e cole somente da coluna A até I...

Agradeço desde ja toda a ajuda ..
obrigada

 
Postado : 05/06/2012 10:27 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa tarde!!

Rodrigo, eu estou sem tempo mas, caso alguém não te ajudar (creio que sim!!!), quando der vou olhar seu caso!!

 
Postado : 05/06/2012 11:18 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Srs. O codigo postado pelo colega Alexandre, parte da premissa de estar sendo executado de uma terceira planilha, e que as duas envovidas "na troca" de informação estão fechadas.
Utilzando os modelos apresentados pela Erica, segue uma adaptação do codigo, para executar à partir da planilha que irá receber os dados.

Sub Copy()
Dim wbk As Workbook
Application.ScreenUpdating = False
'strFirstFile = ThisWorkbook.Path & Application.PathSeparator & ThisWorkbook.Name '"c:hack.xls"
strSecondFile = ThisWorkbook.Path & Application.PathSeparator & "PLANILHA_ORIGEM.xlsx" '"c:vbf.xls"

Set wbk = Workbooks.Open(strSecondFile)
wbk.Sheets("APURACAO").Activate
        Range("A2:I" & Cells(Cells.Rows.Count, "A").End(xlUp).Row).Copy

ThisWorkbook.Sheets("EXPORTADO").Activate
    Range("A" & Cells(Cells.Rows.Count, "A").End(xlUp).Row).PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
        False, Transpose:=False
wbk.Close (SaveChanges = False)
Application.ScreenUpdating = True
    
End Sub
 
Postado : 05/06/2012 11:36 am
(@rodrigojacinto)
Posts: 73
Estimable Member
Topic starter
 

Era isso mesmo que precisava ....
porem no caso se a planilha de origem estiver aberta ele mostra a menssagem que ja esta aberta, e se da sim ele fecha a origem sem salvar, isso nao tem como mexer né... tipo se a planilha estiver aberta ela salva antes de fexar...

 
Postado : 05/06/2012 12:39 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa noite, segue um anexo da rotina que criei para importação, recorte a pasta Bdados e cole em sua area de trabalho abra a planilha Destino e importe vai gerar um erro que estar tratado voce vai precisa entrar no codigo e mudar apenas o caminho.

att MarkoSoftware

 
Postado : 10/06/2012 2:50 pm