Página 1 de 1

Colar a partir da ultima linha preenchida

Enviado: 20 Set 2021 às 12:45
por leonardoav16
Pessoal, criei um codigo porem, eu preciso aprimorar ele para colar a partir da ultima linha preenchida na wsDestino.

Conseguem me ajudar?
Segue esqueleto do código (Meu problema está no passo 6)

Sub Teste_Monitor()

'Passo 1: Declarações.
Dim wsOrigem As Worksheet
Dim wsDestino As Worksheet


'Passo 3: Especifica o caminho do arquivo de origem.
Workbooks.Open Filename:="C:\Exemplo\Exemplo\Exemplo.xlsb"

'Passo 4: Especifica o nome e a aba do arquivo de origem, que deseja copiar os dados.
Set wsOrigem = Workbooks("NOME DO ARQUIVO.xlsb").Worksheets("NOME DA ABA")

' Passo 5: Especifica a aba no arquivo de destino, que deseja colar os dados.
Set wsDestino = ThisWorkbook.Sheets("NOME DA ABA")

'Passo 6: Realiza o procedimento de copiar e colar os dados, no intervalo que desejar. Neste caso está sendo copiado todos os dados da planilha, exceto a primeira linha.
With wsOrigem
Range("A2:CU100000").Copy Destination:=wsDestino.Range("A2:CU100000")
End With

'Passo 7: Especifica o nome da planilha de origem, para salvar e fechar.
Workbooks("NOME DO ARQUIVO.xlsb").Close SaveChanges:=True

End Sub

Re: Colar a partir da ultima linha preenchida

Enviado: 20 Set 2021 às 14:51
por osvaldomp
leonardoav16 escreveu: 20 Set 2021 às 12:45 ... colar a partir da ultima linha preenchida na wsDestino.
Se colar a partir da última linha preenchida ela será sobrescrita, e os dados serão perdidos. É essa a sua ideia?
O comando abaixo copia de A2:CU até a última linha preenchida na coluna A e cola a partir da primeira linha vazia.
Código: Selecionar todos
With wsOrigem
  .Range("A2:CU" & .Cells(Rows.Count, 1).End(3).Row).Copy Destination:=wsDestino.Cells(Rows.Count, 1).End(3)(2)
End With

Re: Colar a partir da ultima linha preenchida

Enviado: 20 Set 2021 às 15:04
por leonardoav16
Deu certissimo Osvaldo
Muito obrigado, aproveitando, preciso de mais uma ajuda..

No passo 4 eu preciso parametrizar para pegar o arquivo referente ao dia atual
Ele gera diariamente nesta pasta, porem com o nome exemplo Testedados_20210920.xls

Eu gostaria de parametrizar para pegar o arquivo com nome Testedados_Data(Hoje)

Re: Colar a partir da ultima linha preenchida

Enviado: 20 Set 2021 às 15:14
por osvaldomp
Olá, @leonardoav16 .

Experimente:

"C:\Testedados_" & Format(Date, "yyyymmdd") & ".xls"

Re: Colar a partir da ultima linha preenchida

Enviado: 20 Set 2021 às 15:39
por leonardoav16
No caso deu querer inserir a hora do arquivo gerado, colocaria a função de TIME agregada ali também?
Eu pergunto porque as vezes ele gera com horário também ficando assim Testedados_20092021_1301_0

Re: Colar a partir da ultima linha preenchida

Enviado: 20 Set 2021 às 15:59
por osvaldomp
Se somente um arquivo é gerado a cada dia, então você pode inserir o asterisco, em vermelho abaixo, que é caractere curinga, e por isso ele vai buscar o arquivo que contenha ou não a hora no final do nome.
Dessa forma, mesmo que você saiba a hora que eventualmente foi colocada no final do nome, você não vai precisar mexer no código pra acrescentar a hora ao nome.
"C:\Testedados_" & Format(Date, "yyyymmdd") & "*.xls"
#

Re: Colar a partir da ultima linha preenchida

Enviado: 20 Set 2021 às 16:05
por leonardoav16
É que as vezes ele gera em três horários por segurança
Ele gera assim:
Testedados_20092021_0102_0 (uma da manha)
Testedados_20092021_0700_0 (sete da manha)
Testedados_20092021_1301_0 (uma da tarde)

Normalmente ele só gera o das 7, porem, quando ele gerar os 3 eu preciso pegar esse das 07 somente, como ficaria o codigo?

Re: Colar a partir da ultima linha preenchida

Enviado: 20 Set 2021 às 16:13
por osvaldomp
"C:\Testedados_" & Format(Date, "yyyymmdd") & "_0700_0.xls"

Re: Colar a partir da ultima linha preenchida

Enviado: 21 Set 2021 às 10:25
por leonardoav16
Bom dia amigo Osvaldo, não deu certo.
_21092021_0701_0 ele gerou assim hoje, e alterando o código conforme orientado, ele acusa que não localizou o arquivo.
Eu coloquei no codigo "C:\Testedados_" & Format(Date, "ddmmyyyy") & "_0701_0.xls"

Será que errei em algo na descrição?

Re: Colar a partir da ultima linha preenchida

Enviado: 21 Set 2021 às 10:38
por osvaldomp
leonardoav16 escreveu: 21 Set 2021 às 10:25 ... ele acusa que não localizou o arquivo.
E qual é o nome do arquivo que você quer abrir ?