Comment utiliser la méthode des cellules spéciales ?

Dans VBA, la méthode des cellules spéciales vous permet de sélectionner une cellule ou une plage de cellules d’un type spécifique et d’un type de valeur spécifique. Disons que vous voulez savoir que dans la plage A1: A10, quelles cellules ont une formule et sont numérotées comme valeur ? Eh bien, vous pouvez obtenir ce résultat avec la méthode SpecialCells.

Utiliser la méthode des cellules spéciales dans VBA

utiliser la méthode des cellules spéciales dans vba

Ici, nous écrivons du code pour connaître l’adresse de la cellule utilisée en dernier dans la plage A1: A10. Notez que, dans la méthode de cellule spéciale, il existe deux arguments dont l’un est obligatoire et l’autre facultatif.

  1. Tout d’abord, déclarez une variable comme plage pour stocker cette adresse de cellule renvoyée par le code.
    declare a variable as range
  2. Après cela, reportez-vous à la plage et utilisez la méthode « SpecialCells » où vous devez spécifier l’argument « Type » avec « xlCellTypeLastCell ».
  3. Ensuite, définissez cette ligne de code de cellule spéciale sur la variable que vous avez définie à la première étape.
    use the specialcells method
  4. À partir de là, vous devez utiliser une boîte de message VBA pour obtenir l’adresse des retours de cellules par la méthode de cellule spéciale.
  5. À la fin, utilisez la propriété address avec la variable pour obtenir l’adresse de la dernière cellule de type.
    Vba message box to get the address

Voici le code complet.

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

Maintenant, lorsque vous exécutez ce code, il vous montrera une boîte de message avec l’adresse de la cellule qui a été utilisée en dernier (tapé). Donc ici, dans mon cas, j’ai utilisé la cellule A10 et la même chose que j’ai reçue dans la boîte de message.

Sélectionnez des cellules avec des notes

Dans Excel, les anciens « Commentaires » sont désormais des « Notes ». Lorsque vous écrivez un code pour sélectionner des commentaires, il sélectionnera les notes que vous avez dans la plage spécifiée. Considérez le code suivant.

sélectionner des cellules avec des notes
Dim myRng As Range

Set myRng = _
Range("A1:A10").SpecialCells(xlCellTypeComments)

myRng.Select

Utiliser les deux arguments

Comme je l’ai dit plus tôt, vous avez deux arguments pour la méthode SpecialCells. Voyons maintenant comment vous pouvez utiliser les deux arguments pour sélectionner des cellules qui ont une formule, et que la valeur renvoyée par la formule est une valeur logique.

Dim myRng As Range

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

myRng.Select

Maintenant, lorsque j’exécute le code ci-dessus, il sélectionne les cellules de la plage A1 à A11 où j’ai des formules et une valeur logique.

en utilisant les deux arguments

Sélectionner des cellules avec une mise en forme conditionnelle

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

Sélectionnez les cellules visibles

Et vous pouvez également sélectionner le visible à l’aide de la constante « xlCellTypeVisible ». Considérez le code suivant.

Dim myRng As Range

Set myRng = Range("A1:A11").SpecialCells(xlCellTypeVisible)

myRng.Select
sélectionner des cellules avec une mise en forme conditionnelle

Ou vous pouvez également utiliser le « 12 » comme valeur d’argument.

Dim myRng As Range

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

myRng.Select

Cellules avec la validation des données

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

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *