Fala pessoal, beleza?
Dúvida simples. Preciso copiar vários valores (nem todos estão no código) e colar na última linha não preenchida de outra aba. Pesquisei bastante e cheguei no código logo abaixo, mas tem 2 pequenos problemas.
1- Preciso colar a maioria em valores. Sei que o código é "Selection.PasteSpecial Paste:=xlPasteValues" mas tentei inserir de algumas formas e não consegui.
2 - Achei o código lento, mesmo quando estava colando apenas 2 valores (em torno de 5 segundos). Alguém saberia otimizar? Temo que quando eu colocar todos os valores que passam de 60 fique mais demorado.
Desde já, obrigado!
Sub IMPORT()
Application.ScreenUpdating = False
If Range("C5").Value <> "" Then
Dim intLinha As Integer
intLinha = ThisWorkbook.Worksheets("BASE").Range("A1").Cells(Rows.Count, 1).End(xlUp).Row + 1
Dim wsOrigem As Worksheet
Dim wsDestino As Worksheet
Set wsOrigem = Worksheets("Cadastro 2")
Set wsDestino = Worksheets("BASE")
With wsOrigem
.Range("C5").Copy Destination:=wsDestino.Cells(intLinha, 2)
.Range("C8").Copy Destination:=wsDestino.Cells(intLinha, 6)
.Range("C9").Copy Destination:=wsDestino.Cells(intLinha, 7)
.Range("C10").Copy Destination:=wsDestino.Cells(intLinha, 8)
.Range("C11").Copy Destination:=wsDestino.Cells(intLinha, 9)
.Range("C12").Copy Destination:=wsDestino.Cells(intLinha, 10)
.Range("C14").Copy Destination:=wsDestino.Cells(intLinha, 11)
End With
End If
Application.ScreenUpdating = True
End Sub
Postado : 04/09/2018 8:27 am