Comment utiliser Intersect dans VBA (avec exemples)
Vous pouvez utiliser la méthode Intersect dans VBA pour renvoyer une plage qui représente l’intersection de deux plages spécifiques.
Voici une façon courante d’utiliser cette méthode dans la pratique :
Function FindIntersect(range1, range2)
FindIntersect = Application.Intersect(range1, range2)
End Function
Vous pouvez ensuite saisir cette fonction directement dans une feuille de calcul Excel, en spécifiant deux plages, et la fonction renverra chacune des valeurs de la plage qui représente l’intersection de ces deux plages.
Les exemples suivants montrent comment utiliser cette fonction en pratique avec l’ensemble de données suivant dans Excel :
Exemple 1 : Trouver l’intersection de deux plages (avec une cellule comme résultat)
Supposons que nous souhaitions renvoyer la valeur de la cellule qui représente l’intersection entre la plage A2:C2 et A1:A11 .
On peut définir la fonction suivante en VBA :
Function FindIntersect(range1, range2)
FindIntersect = Application.Intersect(range1, range2)
End Function
Nous pouvons ensuite taper cette fonction directement dans une cellule de notre tableur :
La formule renvoie la valeur Mavs , qui représente l’intersection de la plage A2:C2 et A1:A11 :
Exemple 2 : Rechercher l’intersection de deux plages (avec plusieurs cellules comme résultat)
Supposons que nous souhaitions renvoyer la plage entière de cellules qui représente l’intersection entre la plage A1:C3 et A1:B10 .
On peut définir la fonction suivante en VBA :
Function FindIntersect(range1, range2)
FindIntersect = Application.Intersect(range1, range2)
End Function
Nous pouvons ensuite taper cette fonction directement dans une cellule de notre tableur :
La formule renvoie toute la plage rectangulaire de valeurs qui représente l’intersection de la plage A1:C3 et A1:B10 :
Remarque : Vous pouvez trouver la documentation complète de la méthode VBA Intersect ici .
Ressources additionnelles
Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans VBA :
VBA : Comment compter le nombre de colonnes utilisées
VBA : Comment compter les lignes dans un tableau
VBA : Comment compter le nombre de feuilles dans un classeur