Test logique excel en VB

Fermé
David - 14 sept. 2009 à 16:59
 David - 15 sept. 2009 à 08:34
Bonjour,

J'ai un problème sur excel. Je dois généraliser un test vlookup (ou recherchev) à un ensemble de colonne. Je m'explique: là où vlookup teste une case sur une plage de cases, il faut que je teste 7 cases sur une plage de 7 cases.

dans une cellule je dois mettre vraie ou faux si les 7 cellules consécutives (A1:G1) sont semblables ou pas aux 7 cellules d'une autre feuille (Ai:Gi) i allant de 1 à 200 et refaire le test pour les 7 cellules de la feuille 1 (A2:G2).

Je pense qu'il faut faire plusieurs boucles en VB... Mais n'étant pas un méloman en programmation...

Merci pour vos réponses.

David
A voir également:

2 réponses

gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 684
14 sept. 2009 à 22:01
bonjour

Il te suffit de faire une petite fonction personnalisée comme ceci à mettre dans un module

Public Function egal_plage(matrice1 As Range, matrice2 As Range) As Boolean
Dim pos As Integer
If matrice1.Count <> matrice2.Count Then
    egal_plage = "#valeur"
Else
    egal_plage = True
End If
For pos = 1 To matrice1.Count
    If matrice1(pos).Value <> matrice2(pos).Value Then
        egal_plage = False
        Exit Function
    End If
Next pos
End Function

Pour l'utiliser, dans une cellule je dois mettre vraie ou faux tu mets cette formule par exemple pour comparer A2:G2 sur 2 feuilles

=egal_plage(A2:G2;Feuil1!A2:G2)

Ta plage n'est pas limitée en taille mais les 2 matrices doivent avoir le même nombre de cellules.
0
Merci pour le coup de pouce je vais de ce pas la tester!

David
0