Como usar o método de célula especial?

No VBA, o método de células especiais permite selecionar uma célula ou intervalo de células de um tipo específico e um tipo de valor específico. Digamos que você queira saber que no intervalo A1:A10, quais células possuem uma fórmula e são numeradas como valor? Bem, você pode conseguir esse resultado com o método SpecialCells.

Use o método de células especiais em VBA

use o método de células especiais em vba

Aqui escrevemos o código para descobrir o endereço da última célula usada no intervalo A1:A10. Observe que no método de célula especial existem dois argumentos, um dos quais é obrigatório e o outro opcional.

  1. Primeiro, declare uma variável como um intervalo para armazenar o endereço da célula retornado pelo código.
    declare a variable as range
  2. Depois disso, consulte o intervalo e use o método “SpecialCells” onde você precisa especificar o argumento “Type” com “xlCellTypeLastCell”.
  3. A seguir, defina esta linha especial de código de célula para a variável que você definiu na primeira etapa.
    use the specialcells method
  4. A partir daqui, você precisa usar uma caixa de mensagem VBA para obter o endereço da célula retornada pelo método de célula especial.
  5. Ao final, use a propriedade address com a variável para obter o endereço da última célula do tipo.
    Vba message box to get the address

Aqui está o código completo.

 Dim myRng As Range Set myRng = Range("A1:A10").SpecialCells(xlCellTypeLastCell) MsgBox myRng.Address

Agora, ao executar este código, ele mostrará uma caixa de mensagem com o endereço da última célula usada (digitada). Então aqui no meu caso usei o celular A10 e o mesmo recebi na caixa de mensagem.

Selecione células com notas

No Excel, os antigos “Comentários” agora são “Notas”. Quando você escreve código para selecionar comentários, ele seleciona as notas que você possui dentro do intervalo especificado. Considere o seguinte código.

selecione células com notas
 Dim myRng As Range Set myRng = _ Range("A1:A10").SpecialCells(xlCellTypeComments) myRng.Select

Use os dois argumentos

Como eu disse anteriormente, você tem dois argumentos para o método SpecialCells. Agora vamos ver como você pode usar os dois argumentos para selecionar células que possuem uma fórmula e que o valor retornado pela fórmula é um valor lógico.

 Dim myRng As Range Set myRng = Range("A1:A11").SpecialCells(xlCellTypeFormulas, xlLogical) myRng.Select

Agora, quando executo o código acima, ele seleciona células do intervalo A1 a A11, onde tenho fórmulas e valores lógicos.

usando ambos os argumentos

Selecione células com formatação condicional

 Range("A1:A11").SpecialCells(xlCellTypeSameFormatConditions) Range("A1:A11").SpecialCells(xlCellTypeAllFormatConditions)

Selecione células visíveis

E você também pode selecionar o visível usando a constante “xlCellTypeVisible”. Considere o seguinte código.

 Dim myRng As Range Set myRng = Range("A1:A11").SpecialCells(xlCellTypeVisible) myRng.Select
selecione células com formatação condicional

Ou você também pode usar “12” como valor do argumento.

 Dim myRng As Range Set myRng = Range("A1:A11").SpecialCells(12) myRng.Select

Células com validação de dados

 Range("A1:A11").SpecialCells(xlCellTypeAllValidation) Range("A1:A11").SpecialCells(xlCellTypeSameValidation)

Adicione um comentário

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