Notifications
Clear all

Colar como valor entre planilhas

7 Posts
3 Usuários
0 Reactions
1,311 Visualizações
(@inimacro)
Posts: 17
Active Member
Topic starter
 

Bom dia,

Tenho o cógio abaixo que me atende parcialmente....preciso conseguir colar a ultima range como valor na outra pasta e não consigo um código que não de erro para isso

(Workbooks("Planilha base dispêndios- apresentação.xlsx").Worksheets("Planilha Base Timesheet").Range("au3:bf10000").Copy Destination:=Workbooks("Planilha base valoração-célula contábil.xlsx").Sheets("Apuração HH").Range("o3")

nessa parte o problema...

Alguem pode me ajudar?

Private Sub CommandButton1_Click()

Workbooks.Open ("C:UserscoliveiraDesktopFluxo ContábilPlanilha base dispêndios- apresentação.xlsx")
Worksheets("Planilha Base Timesheet").Select

Workbooks("Planilha base dispêndios- apresentação.xlsx").Worksheets("Planilha Base Timesheet").Range("a3:a10000").Copy Destination:=Workbooks("Planilha base valoração-célula contábil.xlsx").Sheets("Apuração HH").Range("a3")
Workbooks("Planilha base dispêndios- apresentação.xlsx").Worksheets("Planilha Base Timesheet").Range("b3:b10000").Copy Destination:=Workbooks("Planilha base valoração-célula contábil.xlsx").Sheets("Apuração HH").Range("c3")
Workbooks("Planilha base dispêndios- apresentação.xlsx").Worksheets("Planilha Base Timesheet").Range("au3:bf10000").Copy Destination:=Workbooks("Planilha base valoração-célula contábil.xlsx").Sheets("Apuração HH").Range("o3")

End Sub

 
Postado : 12/03/2018 7:07 am
(@lustosag)
Posts: 39
Eminent Member
 

Boa tarde, teste isso(faça as devidas adequações):

Sub ImportarDados()
'Copiar dados de um worksheet para outro
        Dim wsOrigem As Worksheet
        Dim wsDestino As Worksheet
        
        'Arquivo Destino, abrimos primeiro
        'Ajuste o caminho do mesmo
        Workbooks.Open Filename:="C:Documents and SettingsoraculoMeus documentosDownloadsMaster.xls"
        
        'Arquivos e Abas de Origem e Destino - substitua aqui pelos nomes de seu workbook e worksheet
        Set wsOrigem = Workbooks("Dvisão.xls").Worksheets("Plan1")
        Set wsDestino = Workbooks("Master.xls").Worksheets("Plan5")
          
            With wsOrigem
                    'substitua aqui os ranges origem e destino pelos quais voce quer
                .Range("B2:B500").Copy Destination:=wsDestino.Range("B2")
                .Range("F2:F500").Copy Destination:=wsDestino.Range("K2")
                .Range("J2:J500").Copy Destination:=wsDestino.Range("T2")
            End With
      
      'Fecha o Arquivo Destino e Salva
        Workbooks("Master.xls").Close SaveChanges:=True
        
        MsgBox "Introdução de Dados Concluída"
    End Sub

att Lustosa

 
Postado : 12/03/2018 8:59 am
(@inimacro)
Posts: 17
Active Member
Topic starter
 

Opa, eu preciso que cole como valores pois a range que seleciono está com formulas na planilha de origem.
No código que me passou ate copia e cola, porém como formulas e não valores

 
Postado : 12/03/2018 10:22 am
(@lustosag)
Posts: 39
Eminent Member
 

Olá, veja se eu acertei agora(Lembre de fazer as adequações novamente):

Sub ImportarDados()
'Copiar dados de um worksheet para outro
        Dim wsOrigem As Worksheet
        Dim wsDestino As Worksheet
        
        'Arquivo Destino, abrimos primeiro
        'Ajuste o caminho do mesmo
        Workbooks.Open Filename:="C:UsersUsuarioDesktopPasta2"
        
        'Arquivos e Abas de Origem e Destino - substitua aqui pelos nomes de seu workbook e worksheet
        Set wsOrigem = Workbooks("Pasta1").Worksheets("Planilha1")
        Set wsDestino = Workbooks("Pasta2").Worksheets("Planilha1")
          
            With wsOrigem
                    'substitua aqui os ranges origem e destino pelos quais voce quer
                .Range("A2:A500").Copy
                
                wsDestino.Range("A2").Select
                
                Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False

                .Range("H2:H500").Copy
                
                wsDestino.Range("H2").Select
                
                Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
                
                .Range("J2:J500").Copy
                
                wsDestino.Range("J2").Select
                
                Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
            End With
      
      'Fecha o Arquivo Destino e Salva
        Workbooks("Pasta2").Close SaveChanges:=True
        
        MsgBox "Introdução de Dados Concluída"
    End Sub
 
Postado : 12/03/2018 10:51 am
(@klarc28)
Posts: 971
Prominent Member
 

Para acionar o código VBA, é preciso ter o Excel aberto.

 
Postado : 12/03/2018 10:56 am
(@inimacro)
Posts: 17
Active Member
Topic starter
 

Obrigado!!
Deu certo

 
Postado : 12/03/2018 12:16 pm
(@lustosag)
Posts: 39
Eminent Member
 

Que bom, não esqueça de marcar a resposta certa como qual resolveu o problema para manter o fórum organizado com a tag [RESOLVIDO].

 
Postado : 12/03/2018 12:20 pm