segunda-feira, 16 de junho de 2008

VBA - Como encontrar a última linha preenchida nuna coluna?

Esta é mais uma daquelas que tem mil e uma maneiras de fazer, vou mostrar apenas uma delas.
Quem programa em VBA, principalmente nos casos de inserção de dados, sempre precisa saber onde está o último dado da coluna para gravar o novo valor na célula logo abaixo.
Como descobrir qual é a última célula preenchida de uma coluna?
Veja a função abaixo:

Function ultima_linha()
Dim linha As Long
linha = 2
Do While linha <> 0
linha = linha + 1
Loop
ultima_linha = linha
MsgBox ultima_linha
End Function

"Trocando em miúdos"...
Enquanto o tamanho do texto da célula for maior que zero (o que significa que a célula está preenchida com algum valor), incremente 1 no contador (que se chama "linha") e execute o comparativo na próxima linha.
Como inicia em 2, no momento em que o tamanho do texto da célula for igual a zero, o procedimento é encerrado e a linha em branco é a que o contador indicar.

:-)

7 comentários:

Anônimo disse...

Existe uma forma um pouco mais prática e rápida , dependendo do tamanho do arquivo. desde que vc saiba a primeira celula com dados

Function Contalinha()
ActiveSheet.range("A1").select
Selection.End(Xldown).select
ContaLinha=Activecell.offset(1,0).row
end function

Kazu disse...

Obrigado pela contribuição!

Anônimo disse...

A propriedade UsedRange.Rows também faz o mesmo trabalho, desde que a planilha contenha apenas os dados, nada além disso.

Abraço
Tomás
www.tomasvasquez.com.br

Kazu disse...

Grande honra receber uma visita sua, Tomás e obrigado pela dica!

abraço!

Anônimo disse...

Interpretação interessante aqui, visões assim realção a quem observar nesta página .....
Escreve mair quantidade de este sítio, a todos os teus seguidores.

rshenrique disse...

Ola pessoal!
Estava procurando na internet uma função como essa. Teria como eu adaptar essa função para o seguinte caso:
Tenho um formulario para inserir dados em uma planilha. nesse formulario tem um Botão de comando inserir. So´que antes de inserir os dados eu preciso que seja feita uma verificação de qual a ultima linha a conter valor para que os dados sejam inseridos depois dessa linha.
é importante lembrar que os dados serma inseridos apartir da coluna a17 ate a coluna g17,eu preciso que a verificação seja feita nesse intervalo.
desde ja agradeço

Unknown disse...

Oi pessoal,
estava procurando algo do tipo, porem é possivel fazer algo como: Se a linha da coluna 10 estiver preenchida, então pegue essa linha nas demais colunas e cole em outra aba...

Pesquisar este blog

Arquivo do blog

Quem sou eu

Minha foto
Administrador de Empresas/Técnico em Processamento de Dados. Microsoft Office User Specialist - Excel Proficient. Pós-graduado em Business Intelligence.