Notifications
Clear all

Copiar dados de um workbook para outro utilizando

2 Posts
2 Usuários
0 Reactions
708 Visualizações
(@renanaze)
Posts: 1
New Member
Topic starter
 

Fala Galera,

Estou tentando resolver um código e, por ser leigo no assunto, tenho penado esses dias.
A ideia é a seguinte:

Tenho uma planilha (workbook) no excel que é abastecida diariamente com centenas de lotes de produtos. Todos esses lotes tem um prazo de aprovação.
Estou tentando criar uma planilha (outro workbook) para funcionar como central de avaliação de prazos por meio de macros.
A planilha possui dois botões: no primeiro, seleciono o workbook o qual será avaliado de acordo com os prazos (pode ser matéria-prima, embalagem, etc). Esse botão retorna o endereço da planilha de avaliação, a qual é selecionada com um opendialog, na célula F5 da "central de avaliação".
O segundo botão, a intenção é que ele faça uma varredura na coluna "datas" da planilha apresentada em "F5", copie as datas que estão próximas ao vencimento (menos de 4 dias) e cole na "central de avaliação" na unica aba existente.

Deu pra entender?

Até agora, o código que eu cheguei está apresentado abaixo. O primeiro botão funciona perfeitamente, já o segundo, seleciona as datas mas apenas cria um filtro na planilha de origem dos dados e não cola na planilha central.

Sub copiarClick()

'teste novo
Dim rawDataSht As Worksheet, filtDataSht As Worksheet
Dim pasta As String
Dim wbOrigem As Workbook
Dim wbDestino As Workbook

'Identificação caminho pasta e conferencia do preenchimento
If Range("F5").Value <> "" Then
pasta = Range("F5").Value
Else
MsgBox "Selecionar planilha para avaliação."
Exit Sub
End If

   Set wbDestino = ThisWorkbook
   Workbooks.Open (pasta)
   Set wbOrigem = Workbooks.Open(pasta)
   
     With wbOrigem
        AutoFilterMode = False
        With Range("M2", Range("M" & Rows.Count).End(xlUp))
            .AutoFilter Field:=1, Criteria1:=Array("1", "2", "3", "4")
            On Error Resume Next
            .Offset(1, 0).SpecialCells(xlCellTypeVisible).EntireRow.Copy
        End With
    wbDestino.Sheets("Liberação").Cells(2, 2).PasteSpecial xlPasteValues
        .AutoFilterMode = False
    Application.CutCopyMode = False
    End With
    wbOrigem.Close (True)
End Sub

Alguém tem alguma dica?
Desde já agradeço.
Abraço

 
Postado : 30/11/2017 4:57 am
(@mprudencio)
Posts: 2749
Famed Member
 

O ideal seria a planilha com alugns dados, nao é possivel saber onde estao os dados de origem e onde sera o destino.

Vc pode copiar os dados da planilha de destino carregando em uma matriz e depois colar tudo na planilha de destino, mas como eu disse é preciso saber onde estão os dados.

Marcelo Prudencio
Microsoft Excel Brasil no Facebook

"Começar já é a metade do caminho."
Autor Desconhecido

Simplifica que simples fica.
Nicole Tomazella.

"O Simples é Sempre Melhor Que o Complicado"
Jorge Paulo Lemann.

 
Postado : 01/12/2017 7:10 pm