Selecione uma linha de cabeçalho de coluna inteira menos em uma macro do Excel

8

Como eu poderia acessar um intervalo que corresponde a uma coluna inteira começando na linha 2 (há uma linha de cabeçalho)?

O final da seleção deve ser a última célula não vazia na coluna.

    
por Dave 16.09.2009 / 21:26

5 respostas

5

Consulte o artigo de Suporte da Microsoft Como selecionar células / intervalos usando procedimentos do Visual Basic no Excel , # 19 ( Como selecionar um intervalo inteiro de células contíguas em uma coluna ).

    
por 16.09.2009 / 21:37
2

Tente isto:

Range(Range("A2"),Range("A2").End(xldown)).Select

ou isto:

Range(Range(Cells(2, 1), Cells(2, 1)), Range(Cells(65535, 1), Cells(65535, 1)).End(xlUp)).Select
    
por 16.09.2009 / 23:45
1

Você pode usar os atalhos de teclado do Excel. Tente Ctrl + Início .

Isso levará você à célula A1 (se você não tiver usado o painel congelar). Venha uma célula para baixo e, em seguida, use os botões Ctrl + Deslocar + Seta para baixo para selecionar até a última linha inserida.

Se você tiver que selecionar o valor da coluna, use o botão seta para a direita em vez do botão seta para baixo .

    
por 18.09.2009 / 08:40
1

Referindo-se a essa resposta SO , o O único método seguro é o método .find() .
Todos os outros métodos podem dar resultados errados se você tiver excluído algumas células anteriormente.

Exemplo para obter as últimas células

Lastrow =  Cells.Find("*", [A1], , , xlByRows, xlPrevious).Row
Lastcol =  Cells.Find("*", [A1], , , xlByColumns, xlPrevious).Column

E uma resposta específica à sua pergunta (supondo que seus dados estejam na coluna 2, começando na linha 2)

Range([B2], [B:B].Find("*", [B1], , , xlByRows, xlPrevious)).select

    
por 08.12.2013 / 23:35
0

Esse pedaço de código calcula a média de tudo menos o cabeçalho com o cabeçalho na célula "B1"

Dim GG as Long
GG = Application.WorksheetFunction.Average(ActiveSheet.Range("B2", Range("B2").End(xlDown)))
    
por 04.09.2014 / 14:37