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


8

Como eu acessaria um intervalo que corresponde a uma coluna inteira iniciando na linha 2 (existe uma linha de cabeçalho)?

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

Respostas:



2

Tente o seguinte:

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

2

Referindo-se a esta resposta do SO , o único método seguro é o .find()método.
Todos os outros métodos podem dar resultados incorretos se você excluiu anteriormente algumas células.

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 para sua pergunta (supondo que seus dados estejam na coluna 2, começando na linha 2)

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

insira a descrição da imagem aqui


1

Você pode usar os atalhos de teclado do Excel. Experimente Ctrl+ Home.

Isso levaria você à célula A1 (se você não tiver usado o painel de congelamento). Desça uma célula e use os botões Ctrl+ Shift+ Down arrowpara selecionar até a última linha inserida.

Se você precisar selecionar o valor da coluna, use o right arrowbotão em vez do down arrowbotão.


0

Esse pedaço de código calcula a média de tudo, exceto 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)))
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.