Vba: como selecionar todas as células que contêm dados
Você pode usar os seguintes métodos em VBA para selecionar todas as células que contêm dados em uma planilha:
Método 1: selecione uma grade de células com dados
SubSelectCellsWithData ()
Range(" A1 ").CurrentRegion.Select
End Sub
Esta macro específica selecionará uma grade de células com dados começando na célula A1 da planilha atualmente ativa.
Método 2: selecione células individuais com dados
SubSelectCellsWithData ()
Worksheets(" Sheet1 ").Activate
ActiveSheet.Cells.SpecialCells(xlCellTypeConstants).Activate
End Sub
Esta macro específica selecionará todas as células individuais que contêm dados de Sheet1 .
Os exemplos a seguir mostram como usar cada método na prática com a seguinte planilha chamada Planilha1 no Excel:
Exemplo 1: Selecione uma grade de células com dados
Suponha que queiramos selecionar a grade de células que contém os dados em Sheet1 .
Podemos criar a seguinte macro para fazer isso:
SubSelectCellsWithData ()
Range(" A1 ").CurrentRegion.Select
End Sub
Quando executamos esta macro, podemos ver que toda a grade de células contendo os dados da Planilha1 foi selecionada:
Observe que este método usa a propriedade CurrentRegion para selecionar o intervalo de células delimitadas por células vazias.
Você pode encontrar a documentação completa da propriedade CurrentRegion aqui .
Exemplo 2: Selecione células individuais com dados
Suponha que queiramos selecionar apenas todas as células individuais que contêm dados em Sheet1 .
Podemos criar a seguinte macro para fazer isso:
SubSelectCellsWithData ()
Worksheets(" Sheet1 ").Activate
ActiveSheet.Cells.SpecialCells(xlCellTypeConstants).Activate
End Sub
Quando executamos esta macro, podemos ver que cada uma das células individuais na Planilha1 contendo dados está selecionada:
Recursos adicionais
Os tutoriais a seguir explicam como realizar outras tarefas comuns em VBA:
VBA: Como definir o valor de uma célula em outra planilha
VBA: Como selecionar um intervalo em uma célula ativa
VBA: Como excluir linhas com base no valor da célula