Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

VBA : intersection de plages

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

garth_algar

XLDnaute Junior
[résolu] VBA : intersection de plages

Bonjour,

J'ai besoin de déterminer l'intersection de 2 plages dans une fonction VBA. Apparement il faut utiliser Application.Intersect mais ma fonction ne donne pas ce que j'attends. J'ai donc comparé l' "Intersect" de VBA et l'intersection classique d'Excel :

J'ai créé cette fonction :

Public Function INTERSEC(x As Range, y As Range) As Range
INTERSEC = Application.Intersect(x, y)
End Function

En tapant =NB(ntersec($B$15:$E$18;$E$1:$E$30)), j'obtiens 0, alors qu'en tapant simplement =NB($B$15:$E$18 $E$1:$E$30) j'obtiens 4.

Est-ce que quelqu'un voit mon erreur dans ma fonction INTERSEC ?
Merci d'avance.
 
Dernière édition:
Re : VBA : intersection de plages

bonjour garth_algar

Teste:

Code:
Public Function INTERSEC(x As Range, y As Range) [COLOR=red]As Integer[/COLOR]
INTERSEC = Application.Intersect(x, y[COLOR=red][COLOR=black])[/COLOR].Count[/COLOR]
End Function
 
Re : VBA : intersection de plages

En effet ça marche, mais en fait ce n'est pas le nombre de cellules que je cherche. Le "NB" me sert uniquement - j'ai oublié de le préciser - à vérifier si ma fonction donne la bonne intersection, c'est-à-dire celle que fournit Excel, en l'occurence non pour l'instant.
Je souhaiterais créer l'intersection en tant que variable.
 
Dernière édition:
Re : VBA : intersection de plages

Bonjour à tous,

essaye :

Code:
Public Function INTERSEC(x As Range, y As Range) As Range
[COLOR=red]Set[/COLOR] INTERSEC = Application.Intersect(x, y)
End Function

pour les objets, Set est obligatoire
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…