Aide : Formule Matricielle

nonifel

XLDnaute Junior
Bonjour le forum,

je souhaite intégrer dans une formule matricielle, une formule permettant de supprimer les doublons,
Le fichier ci-joint explique ma problématique.

Merci beaucoup.
 

Pièces jointes

  • Fonction Matricielle.xlsx
    27.5 KB · Affichages: 30
  • Fonction Matricielle.xlsx
    27.5 KB · Affichages: 22
Dernière édition:

CHALET53

XLDnaute Barbatruc
Re : Aide : Formule Matricielle

Bonjour,

Peut-être comme ceci en D6 (formule matricielle)

=SI(SOMME(NB.SI($D$5:D5;zone))=LIGNES(zone);"";INDEX($A:$A;MIN(SI(NB.SI($D$5:D5;zone)=0;LIGNE(zone)));))

a+

2 points suivis de D5
A la fin : après les 3 ")" le point virgule suivi de 2 ")"

Définir : zone =DECALER(Feuil4!$A$2;;;NBVAL(Feuil4!$A:$A)-1)
 
Dernière édition:

BOISGONTIER

XLDnaute Barbatruc
Repose en paix
Re : Aide : Formule Matricielle

Bonjour

Avec fonction perso (rapide)

-Sélectionner F6:F193
=SansDoublonsCritère(A2:A1161;B2:B1161;F3)
-Valider avec maj+ctrl+entrée


cf PJ

JB
 

Pièces jointes

  • Fonction Matriciellezz.xls
    96 KB · Affichages: 30
Dernière édition:

nonifel

XLDnaute Junior
Re : Aide : Formule Matricielle

Bonjour CHALET53,

Merci pour la réponse, peut être que je ne suis pas doué avec Excel, mais ça ne marche pas. :(

Si tu as une formule plus simple ou à partir de ma formule qui marche bien, la possibilité d'intégrer une formule qui supprime les doublons.

Merciiii
 

BOISGONTIER

XLDnaute Barbatruc
Repose en paix
Re : Aide : Formule Matricielle

-Alt+F11
-Insertion/Module

Code:
Function SansDoublonsCritère(champ As Range, champCritère As Range, critère)
  Set mondico = CreateObject("Scripting.Dictionary")
  temp = champ
  temp2 = champCritère
  crit = critère
  For i = LBound(temp, 1) To UBound(temp, 1)
   If Not mondico.Exists(temp(i, 1)) And temp(i, 1) <> "" And UCase(temp2(i, 1)) = UCase(crit) Then
     mondico.Add temp(i, 1), temp(i, 1)
   End If
  Next i
  Dim b()
  ReDim b(1 To Application.Caller.Rows.Count)
  i = 1
  For Each c In mondico.items
    b(i) = c
    i = i + 1
  Next
  SansDoublonsCritère = Application.Transpose(b)
End Function



JB
 

Discussions similaires

Statistiques des forums

Discussions
312 174
Messages
2 085 951
Membres
103 058
dernier inscrit
florentLP