Comparer 2 tableaux

CISCO

XLDnaute Barbatruc
Re : Comparer 2 tableaux

Bonjour

Tu peux faire avec
Code:
SOMMEPROD((A3:Z3>10)*(NB.SI(C22:J25;A3:Z3)>0))

A3:Z3>10 permet de ne tenir compte que des nombres à plus de 2 chiffres, NB.SI(C22:J25;A3:Z3)>0 que des nombres qui se trouvent en ligne 3 et dans le tableau du bas, le produit, des nombres en ligne 3 vérifiant ces deux conditions en même temps, SOMMEPROD fait le total.

@ plus
 

CISCO

XLDnaute Barbatruc
Re : Comparer 2 tableaux

RE

Tu aurais ou essayer d'adapter ma formule précédente aux bonnes plages... Cf. une possibilité en pièce jointe, toujours en matriciel cette fois-ci à cause des NB.SI. Tu peux copier-coller la formule vers la droite et vers le bas. J'ai mis deux formats personnalisés pour que s'affichent 1 n° identique, 2 n° identiques, 3 n° identiques... alors que ces cellules ne contiennent que les valeurs 1, 2, 3 et ainsi de suite.

@ plus
 

Pièces jointes

  • Comparer 2 tableaux (1).xls
    28 KB · Affichages: 40
Dernière édition:

CISCO

XLDnaute Barbatruc
Re : Comparer 2 tableaux

RE

Dans ton premier fichier, tu as écris "Exemple les n° de A3-Z3 sont comparés aux n° de C22-J22 (pas de n° identique)".
Regarde ma proposition sur le post #5. Elle est facile à adapter à un fichier plus grand.

@ plus
 

job75

XLDnaute Barbatruc
Re : Comparer 2 tableaux

Bonsoir patate38, CISCO,

Les explications dans le fichier du post #1 ne tiennent vraiment pas la route.

C'est (un peu) mieux dans le fichier du post #3, mais alors pourquoi le 16 en P22 et H26 est-il ignoré :confused:

Avec un 3ème exemple on arrivera peut-être à comprendre ce que vous voulez.

A+
 

patate38

XLDnaute Junior
Re : Comparer 2 tableaux

Bonsoir à tous,
Merci de vous pencher sur mon problème. J'essaie d'être le plus clair possible. job75 le 16 en P22 est un oubli de ma part, désolé.
CISCO en AH26 le résultat attendu est une fois 3n° identiques et non deux.
Voici le fichier, voir feuille 3.
@+
Regarde la pièce jointe Comparer 2 tableaux.xls
 

Pièces jointes

  • Comparer 2 tableaux.xls
    21.5 KB · Affichages: 39
  • Comparer 2 tableaux.xls
    21.5 KB · Affichages: 43

job75

XLDnaute Barbatruc
Re : Comparer 2 tableaux

Re,

Bon vous continuez à vous mélanger les pédales.

Alors ci joint votre fichier du post #3 complété en AD3:AJ3 avec cette fonction VBA :

Code:
Function NbIdent(vecteur As Range, r As Range, N)
Dim compte, c1 As Range, c2 As Range
N = Val(N)
If N = 0 Then NbIdent = "": Exit Function
For Each r In r.Rows
  compte = 0
  For Each c1 In r.Cells
    If c1 <> "" Then
      For Each c2 In vecteur
        If c1 = c2 Then compte = compte + 1
      Next
    End If
  Next
  If compte = N Then NbIdent = NbIdent + 1
Next
End Function
A+
 

Pièces jointes

  • Comparer 2 tableaux(1).xls
    46 KB · Affichages: 41
Dernière édition:

CISCO

XLDnaute Barbatruc
Re : Comparer 2 tableaux

Bonsoir
Bonsoir à tous,
CISCO en AH26 le résultat attendu est une fois 3n° identiques et non deux.
@+
Regarde la pièce jointe 322434

Ligne 26, tu as les nombres 5, 14 et 16 qui se trouvent aussi en ligne 22. Soit 3 nombres. Mais comme tu as demandé de ne prendre en compte que les nombres composés de 2 chiffres ou plus ("Ne doivent être comptés que les n° identiques de 2 chiffres et +"), seuls 14 et 16 sont valables. Soit 2 dans la colonne 3 n° identiques.
Dans ton fichier 3, ligne 26, tu as oublié le 16.

@ plus

P.S 1 : Bonsoir Job75
 
Dernière édition:

job75

XLDnaute Barbatruc
Re : Comparer 2 tableaux

Mais comme tu as demandé de ne prendre en compte que les nombres composés de plus de 2 chiffres, seuls 14 et 16 sont valables.

Oui CISCO, notre ami s'est là aussi mal exprimé puisque dans ses exemples les nombres de 1 chiffre sont comptés.

Pour terminer, en Feuil1 de ce fichier (2) la plage AD3:AJ3 et ses formules a été copiée plus bas en lignes 5 7 9 11.

A+
 

Pièces jointes

  • Comparer 2 tableaux(2).xls
    57.5 KB · Affichages: 36

job75

XLDnaute Barbatruc
Re : Comparer 2 tableaux

Re,

Avant d'aller dormir, cette macro plus simple :

Code:
Function NbIdent(vecteur As Range, r As Range, N)
Dim compte, c As Range
N = Val(N)
If N = 0 Then NbIdent = "": Exit Function
For Each r In r.Rows
  compte = 0
  For Each c In vecteur
    compte = compte + Application.CountIf(r, c)
  Next
  If compte = N Then NbIdent = NbIdent + 1
Next
End Function
Les cellules vides ne sont pas comptées.

Fichier (3).

Bonne nuit.
 

Pièces jointes

  • Comparer 2 tableaux(3).xls
    58 KB · Affichages: 37

CISCO

XLDnaute Barbatruc
Re : Comparer 2 tableaux

Bonjour à tous

Il y avait bien une erreur dans la fomule matricielle que j'avais proposée (mais cela ne se voyait pas avec les exemples traités) : Il faut y remplacer le <10 par <9 pour prendre en compte les 10 présents (Aux dernières nouvelles, 10 est un nombre à deux chiffres :)).

J'ai modifié en conséquence mon fichier dans le post #5

@ plus
 

Discussions similaires

Réponses
2
Affichages
92
Réponses
25
Affichages
651