XL 2016 Index indirect équiv 2 critères

  • Initiateur de la discussion Initiateur de la discussion Chubby
  • Date de début Date de début

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 !

Chubby

XLDnaute Impliqué
Bonjour à tous,

Petit problème qui me fait tourner banana.
Je voudrais retrouver des valeurs selon deux critères avec en prime différents onglets.
Je vous laisse un petit bout de fichier pour mieux visualiser les choses.
Merci d'avance pour votre coup de pouce.
 

Pièces jointes

Mais là, une petite fonction perso VBA serait plus sympa :
VB:
Function VolRev(Entité, Appélation, Année, Retour)
    Dim DL%, i%
    With Sheets(CStr(Année))
        DL = .Range("A65500").End(xlUp).Row
        tablo = .Range("A6:F" & DL)
        For i = 1 To UBound(tablo)
            If tablo(i, 1) = Entité And tablo(i, 2) = Appélation Then
                If Retour = "Vol" Then
                    VolRev = tablo(i, 5)
                    Exit Function
                ElseIf Retour = "Rev" Then
                    VolRev = tablo(i, 6)
                    Exit Function
                End If
            End If
        Next i
    End With
End Function
Syntaxe :
'=VolRev(Entité;Appelation;Année;Retour)
avec Retour="Vol" pour Vol et Retour="Rev" pour Prix Rev.
 

Pièces jointes

Bonjour Sylvanu, bonjour le forum,

Ah oui, voilà qui est propre et efficace Sylvanu. Je t'en remercie. J'étais assez loin du compte avec mon rafistolage.
Quant à ta vba, euh, j'hésite beaucoup je dois dire. Mais bravo pour ton travail.
Encore un grand merci à toi
 
Bonjour Chubby, sylvanu,

Non, RECHERCHEV ne permet pas de traiter 2 critères.

Une autre solution avec SOMMEPROD dans le fichier joint si les concaténations A&B sont uniques :
Code:
=SOMMEPROD(INDIRECT($C$3&"!E6:E13")*($A6&$B6=INDIRECT($C$3&"!A6:A13")&INDIRECT($C$3&"!B6:B13")))
Notez que las apostrophes ne sont pas nécessaires car il n'y a pas d'espaces dans les noms des feuilles.

A+
 

Pièces jointes

Bonjour Job75 et les zôtres,

Merci pour ton petit coup de main. Une version assez sympa. En fait j'ai besoin des apostrophes dna sle renvoir avec "Indirect" car les onglets comportent des blancs (Mill 2021) par exemple.

Mon souci actuel est celui figurant avec en lignes SAS et SN ... je sais que c'est simple mais je me perds en conjecture.
Si tu as deux secondes ... un grand merci
 
Bonjour Chubby, Job,
Mon souci actuel est celui figurant avec en lignes SAS et SN ...
Possible avec :
VB:
=SIERREUR(INDEX(INDIRECT("'"&C$20&"'!H28:I29");EQUIV($A21;INDIRECT("'"&C$20&"'!A28:A29");0);EQUIV($B21;INDIRECT("'"&C$20&"'!H27:I27");0));"")
Non matriciel.
 

Pièces jointes

Re Sylvanu, et les zôtres,

La main du Maitre je dois dire. Une aisance que j'envie. Dès que je suis en face de ce genre de problème j'hésite Thalès, Pythagore? Et toi tu poses ta formule et tout roule. Bravo.
Bravo et merci pour ton aide.
Une petite question pourquoi n'emploies tu pas de matriciel dans ce cas particulier?
 
- 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

Réponses
2
Affichages
618
Réponses
5
Affichages
2 K
Retour