Blog

Postado em em 21 de agosto de 2020

Primeira Linha Vazia com VBA

Se você já precisou preencher tabelas ou cadastrar informações usando o VBA você já precisou descobrir a primeira linha vazia da tabela!

Nessa publicação vou te ensinar a fazer isso de forma rápida e fácil!

Caso prefira esse conteúdo no formato de vídeo-aula, assista ao vídeo abaixo!

Clique aqui para baixar a planilha utilizada nessa publicação!

O que significa descobrir a primeira linha vazia?

Descobrir a primeira linha vazia de uma coluna representa saber onde podemos inserir valores onde podemos inserir novos dados sem sobrescrever antigos (substituir e perder informações antigas).

Para que serve descobrir a última célula preenchida?

Serve para saber onde podemos inserir novos dados em uma coluna de uma tabela que tem várias linhas já preenchidas, por exemplo. Se você tem um banco de dados de cadastro de funcionários, produtos, o que seja, para inserir um novo funcionário, precisa ir na linha imediatamente após o último funcionário ou produto para inserir um novo no cadastro.

Como fazemos para descobrir a primeira linha vazia?

Seguindo mais um vídeo da nossa série que tem por objetivo juntar planilhas no Excel em uma só, apresentaremos como descobrir a primeira linha vazia de uma tabela. Essa é apenas uma etapa entre outras necessárias para fazer a consolidação de dados em planilhas que estão contidas na série.

Usaremos como base o exemplo do vídeo, onde temos uma tabela com as colunas Data, Código Produto, Código Cliente e Valor, na primeira aba e na segunda aba. A primeira aba tem a tabela preenchida, enquanto a tabela da segunda aba não tem nenhum dado, somente o cabeçalho com os nomes das colunas. Veja abaixo:

Ctrl Seta VBA

Ctrl Seta VBA

Temos duas formas de achar a última célula preenchida no Excel. A primeira é a que procuramos a última célula de uma tabela preenchida clicando numa célula da tabela e usamos na sequência o atalho do teclado de Ctrl + (seta para baixo).

Com isso, o Excel selecionará a última célula preenchida daquela coluna da tabela (coluna A no vídeo), que é o caso da primeira aba do nosso exemplo. Nesse caso, o Excel iria selecionar a célula A17.

A segunda forma é a que procuramos a última célula indo na última linha do Excel (1.048.576), apertando Ctrl + até chegarmos nela, ou através da caixa de nome, localizada à esquerda da caixa de fórmulas digitando A1048576 e dando Enter. A partir disso, damos um Ctrl + (seta para cima).

O Excel irá selecionar a última célula preenchida daquela coluna (coluna A no vídeo), que é o caso da nossa segunda aba do exemplo, onde ele irá parar no cabeçalho de qualquer coluna. No exemplo do vídeo, o Excel irá parar na célula A1.

Agora vamos ver como fazer isso no VBA. Veja como ficará o código para descobrir tanto a última célula preenchida da tabela (para ambas as abas) quanto a primeira linha vazia (da primeira aba):

Última Célula Preenchida

Última Célula Preenchida

Para criar o código precisamos Inserir um novo Módulo após abrir o VBA (Alt(+Fn)+F11), como já vimos em outros posts.

Explicação do código:

Sub ultima_linha() é a instrução que começará o nosso código, onde “Sub” significa a subrotina de código, e a “ultima_linha” representa o nome do nosso código.

linha = Sheets(“Primeira Aba”).Range(“A1048576”).End(xlUp).Row + 1 é a instrução de código que vai armazenar na variável “linha” o número correspondente à linha que o Excel irá achar indo na Primeira Aba, na célula A1048576, após dar um Ctrl + ↑. Após isso, acrescentará 1 (um) ao valor, para descobrirmos a linha imediatamente abaixo à última célula preenchida daquela tabela, ou seja, a primeira linha vazia dessa tabela (para inserir novos dados).

linha = Sheets(“Primeira Aba”).Range(“A1048576”).End(xlUp).Row é a instrução de código que vai armazenar na variável “linha” o número correspondente à linha que o Excel irá achar indo na Primeira Aba, na célula A1048576, após dar um Ctrl + ↑. Ela representa a última linha preenchida da tabela da primeira aba.

linha = Sheets(“Segunda Aba”).Range(“A1048576”).End(xlUp).Row é a instrução de código que vai armazenar na variável “linha” o número correspondente à linha que o Excel irá achar indo na Segunda Aba, na célula A1048576, após dar um Ctrl + ↑. Ela representa a última linha preenchida da tabela da segunda aba.

End Sub é a instrução que finalizará o nosso código, e fecha a nossa “Sub”, iniciada pela primeira instrução.

Esse é um passo muito útil em códigos de VBA, e para entendê-lo bem devemos compreender como o Excel funciona também. Ele é apenas uma parte da nossa série compilação de planilhas no VBA, onde vamos ensinar em diversas etapas a juntar planilhas em uma só. Fique ligado no nosso canal do Youtube e aqui no nosso Blog para saber mais!

Hashtag Treinamentos

Para acessar outras publicações de VBA, clique aqui!


Quer aprender mais sobre VBA com um Minicurso Gratuito?


Quer participar do maior evento de Power BI da América Latina de forma 100% Online e Gratuita? Inscreva-se abaixo!