Como usar uma macro VBA para descobrir quantas linhas e colunas são usadas em uma tabela do Excel
Dependendo da versão do Excel, um número diferente de linhas e colunas é oferecido em uma tabela. Como você pode saber em uma macro quando deseja iterar em todas as linhas ou colunas de uma tabela?
Enquanto no Excel até a versão 2003, inclusive, havia apenas 256 colunas e 65.536 linhas, desde o Excel 2007, há 16.384 colunas e 1.048.576 linhas disponíveis.
Existem também diferentes formatos de armazenamento no Excel para as duas planilhas diferentes: XLS e XLSX. No entanto, não é o caso de um arquivo XLSX ter automaticamente as planilhas maiores. Mesmo no Excel 2007 e Excel 2010, quando um arquivo é aberto no modo de compatibilidade, apenas as dimensões anteriores da tabela estão disponíveis.
Portanto, se você deseja determinar em uma macro quantas linhas e colunas uma planilha possui, você deve consultar esse número diretamente. A macro a seguir mostra como fazer isso
Sub RowUndColumnNumber ()
MsgBox ActiveSheet.Cells.Rows.Count & "Rows" & _
ActiveSheet.Cells.Columns.Count & "Colunas".
End Sub
Se você chamar a macro com uma planilha XLS, o Excel mostrará o número correspondente de linhas e colunas, conforme mostrado na figura a seguir:
Se você iniciar a macro no Excel 2007 ou Excel 2010 sem modo de compatibilidade, uma caixa de diálogo mostrará as dimensões maiores da tabela:
Em loops VBA que devem ser executados por todas as células de uma tabela, você pode, portanto, usar as duas propriedades ROWS.COUNT e COLUMNS.COUNT conforme descrito para determinar as dimensões de uma planilha.
Pode levar muito tempo (especialmente no Excel 2007 e no Excel 2010) para executar todas as células teoricamente disponíveis usando uma macro. Se você quiser limitar os loops apenas à área usada, recomendamos usar a propriedade USEDRANGE.
Para entrar na macro, pressione a combinação de teclas ALT F11 no Excel. Isso inicia o editor VBA em todas as versões do Excel. Selecione o comando INSERT - MODULE e insira a macro. Para iniciar a macro, ative a combinação de teclas ALT F8 no Excel.