Vídeo recomendado
https://youtu.be/diWPPPhW-9E

achar última linha e selecionar células abaixo

Fórum para dúvidas sobre os fundamentos da linguagem de programação Visual Basic no contexto do VBA
lupalestina
Colaborador
Colaborador
Mensagens: 10
Registrado em: Ter Out 22, 2019 11:06 am

achar última linha e selecionar células abaixo

Mensagem por lupalestina »

Boa tarde Galera,

Estou precisando de uma ajuda com programação VBA.
Tenho várias planilhas com mais de 15k linhas e preciso quebrar em bases de 500.
Tentei (sem sucesso) elaborar uma macro que me fizesse esse processo, de achar a última célula preenchida, recortar 500 linhas abaixo e colar em uma nova planilha.
alguém consegue me ajudar com isso?


Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Tov Elen Shau
Manda bem
Manda bem
Mensagens: 173
Registrado em: Qua Mai 17, 2017 2:27 pm

Re: achar última linha e selecionar células abaixo

Mensagem por Tov Elen Shau »

Colega

Boa tarde

Não entendi muito bem. Se vc vai selecionar 500 linhas abaixo da última linha preenchida, entende-se que não vai ter nada para ser transportado para outra planilha, pois as células com valores ficaram acima.

Atenciosamente

Tov Elen Shau


lupalestina
Colaborador
Colaborador
Mensagens: 10
Registrado em: Ter Out 22, 2019 11:06 am

Re: achar última linha e selecionar células abaixo

Mensagem por lupalestina »

É isso mesmo...eu me expressei mal.
Seria pra achar a primeira linha preenchida e a partir desta linha selecionar 500 linhas abaixo e recortar pra uma nova planilha. Por exemplo, a linha 5 da coluna A é a primeira com preenchimento, dai a partir dela eu queria selecionar 500 linhas abaixo, recortar esse intervalo e colar em uma nova planilha.
Desculpa pela minha falha de comunicação.


Tov Elen Shau
Manda bem
Manda bem
Mensagens: 173
Registrado em: Qua Mai 17, 2017 2:27 pm

Re: achar última linha e selecionar células abaixo

Mensagem por Tov Elen Shau »

Colega

Bom dia

Sem ver sua planilha estamos sujeitos a alguns erros, mas veja se consegue algo com a rotina abaixo. Coloque a rotina abaixo em um módulo e não se esqueça de atribuir o nome da planilha onde estão seus dados, na opção Set ws = Sheets("Planilha1") '---------Nome da planilha onde estão os dados. Faça o teste em uma cópia da sua planilha.

Sub TransporValores()
'ROTINA PARA BUSCAR VALORES E TRANSPOR PARA UMA NOVA PLANILHA
Dim ws As Worksheet
Set ws = Sheets("Planilha1") '---------Nome da planilha onde estão os dados
ws.Select '----------------------------Seleciona Planilha
Range("A1").Select '------------------Coluna que busca saber se está vazia ou não
Ult = Range("A650000").End(xlUp).Row '-Ultima linha preenchida, busca se concentrarão até esta linha

'ROTINA PARA LOCALIZAR A PRIMEIRA LINHA PREENCHIDA
Do
If ActiveCell.Value = Empty Then
ActiveCell.Offset(1, 0).Select
End If
Loop Until ActiveCell.Value <> Empty Or ActiveCell.Row >= Ult

'ROTINA PARA TRANSPOR PARA NOVA PLANILHA VALORES ENCONTRADOS
Do
If ActiveCell.Value <> Empty Then
i = ActiveCell.Row
x = i + 499
Range("A" & i & ":" & "I" & x).Select '---Seleciona 500 Linhas das colunas A e B
'Selection.Copy '-------------------------COPIA células selecionadas
Selection.Cut '--------------------------RECORTA células selecionadas
Sheets.Add After:=ActiveSheet '-----------Cria uma nova planilha
ActiveSheet.Paste
Range("A1").Select
Else
ActiveCell.Offset(1, 0).Select
End If
ws.Select
Range("A" & x + 1).Select

Loop Until ActiveCell.Row >= Ult
MsgBox "Processo concluido com sucesso!", vbInformation, "CONCLUIDO"

End Sub

'Atenciosamente
'Tov Elen Shau


Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


lupalestina
Colaborador
Colaborador
Mensagens: 10
Registrado em: Ter Out 22, 2019 11:06 am

Re: achar última linha e selecionar células abaixo

Mensagem por lupalestina »

Maaaaaaaaano, funcionou perfeitamente.
Obrigado demais pela ajuda.
Vc é fera irmão.


Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Responder