Vba: como encontrar a última coluna usada


Você pode usar a seguinte sintaxe básica em VBA para encontrar a última coluna usada em uma planilha Excel:

 Sub FindLastColumn()
Range(" A14 ") = Cells.Find("*",Range(" A1 "),xlFormulas,xlPart,xlByColumns,xlPrevious,False).Column
End Sub

Este exemplo específico procura a última coluna usada na planilha atual e retorna o resultado na célula A14 .

Se você quiser exibir a última coluna de uma caixa de mensagem, poderá usar a seguinte sintaxe:

 Sub FindLastColumn()
Dim LastCol As Long
    
LastCol=Cells.Find("*",Range(" A1 "),xlFormulas,xlPart,xlByColumns,xlPrevious,False).Column

MsgBox " Last Column: " & LastCol
End Sub

Os exemplos a seguir mostram como usar cada um desses métodos na prática.

Relacionado: VBA: Como encontrar a última linha usada

Exemplo 1: Encontre a última coluna usando VBA e exiba os resultados na célula

Digamos que temos o seguinte conjunto de dados no Excel que contém informações sobre vários jogadores de basquete:

Podemos criar a seguinte macro para encontrar a última coluna usada nesta planilha Excel e exibir o resultado na célula A14 :

 Sub FindLastColumn()
Range(" A14 ") = Cells.Find("*",Range(" A1 "),xlFormulas,xlPart,xlByColumns,xlPrevious,False).Column
End Sub

Quando executamos esta macro, recebemos a seguinte saída:

Observe que a célula A14 contém o valor 2 .

Isso nos diz que a última coluna usada nesta planilha específica é a coluna 2.

Também é importante notar que se você tiver colunas vazias antes de uma coluna usada, esta macro sempre encontrará a última coluna usada.

Por exemplo, suponha que executemos a macro no seguinte conjunto de dados:

A célula A14 contém o valor 5 porque é a última coluna que contém valores.

Exemplo 2: Encontre a última coluna usando VBA e exiba os resultados na caixa de mensagem

Suponha que, em vez disso, queiramos encontrar a última coluna usada em uma planilha e exibir o número da coluna em uma caixa de mensagem.

Podemos criar a seguinte macro para fazer isso:

 Sub FindLastColumn()
Dim LastCol As Long
    
LastCol=Cells.Find("*",Range(" A1 "),xlFormulas,xlPart,xlByColumns,xlPrevious,False).Column

MsgBox " Last Column: " & LastCol
End Sub

Quando executamos esta macro, recebemos a seguinte saída:

VBA encontra a última coluna usada

A caixa de mensagem nos informa que a última coluna usada na planilha é a coluna 2 .

Nota : Você pode encontrar a documentação completa para o método Find do VBA aqui .

Recursos adicionais

Os tutoriais a seguir explicam como realizar outras tarefas comuns em VBA:

VBA: Como calcular o valor médio do intervalo
VBA: Como contar o número de linhas no intervalo
VBA: Como remover valores duplicados no intervalo

Add a Comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *