Je travaille sur un problème Excel depuis près de 24 heures. J'ai une formule qui fait presque ce que je veux mais elle ne retourne pas ce que j'imagine qu'elle devrait l'être:
=INDEX(Data!D:D,SUMPRODUCT((Data!C:C=Total!A5)*(Data!A:A="Total")*(Data!B:B="Total")*(ROW(Data!D:D))))
J'imagine la ligne d'indexation de la colonne D dans les données! feuille de calcul doit être la ligne réelle dans laquelle la correspondance se produit, mais pour chaque valeur, mais la première valeur, la valeur renvoyée provient de 3 lignes en dessous.
Oui, alors pour la première cellule dans laquelle j'applique cette formule, je récupère la bonne valeur de la colonne D de Data !. Mais, pour chaque cellule suivante avec la formule, je récupère la valeur dans la colonne D de données! 3 rangées en dessous du match.
J'ai essayé chaque combinaison de soustraire 3 de la formule (pour retourner la ligne appropriée), mais en vain. Cela n'expliquerait toujours pas pourquoi la première cellule dans laquelle la formule est appliquée renvoie la valeur attendue!
Toute aide est très appréciée, bien sûr ...
la source
INDEX/MATCH
est plus approprié si vous recherchez une valeur uniqueSUMPRODUCT
pour le numéro de ligne au lieu deMATCH
ne fonctionnera que si la valeur de recherche est unique. Il ne retourne pas la première correspondance, il renvoie la somme totale de toutes les correspondances. Prenez une capture d'écran de certaines données rédigées et postez un lien vers celle-ci si vous ne pouvez pas fournir de données exemple.Réponses:
Je ne sais pas très bien si vous voulez trouver le premier, le deuxième, etc. correspond à Total! A5 ou si vous essayez de trouver le premier correspondant à A5, puis le premier à A6, etc. Cette solution proposée est pour le ancien.
Je préfère utiliser la méthode d'exclusion mathématique pour intercepter plusieurs retours sur des correspondances. Si vous éliminez ce qui ne correspond pas, alors ce qui reste doit être l'ensemble des résultats correspondants. Je suis également suffisamment impatient pour trouver le décalage de calcul des références de colonne complètes
SUMPRODUCT
ennuyeux. J'ai donc coupé vos références de plage aux premières rangées de ~ 1K.Ceci est une formule standard ( non-array ). Remplissez si nécessaire pour saisir toutes les déclarations correspondantes. Lorsque vous transcrivez ceci pour vos propres besoins, rappelez-vous qu'il
ROW(1:998)
s'agit de la position à l'intérieurData!D2:D999
et non du numéro de ligne réel de la feuille de calcul.ROW(1:1)
est simplement un compteur qui s’incrémente à mesure que vous remplissez. Parfois, unCOUNTIF
est plus approprié et peut être utilisé pour intercepter plusieurs déclarations correspondantes sur plusieurs valeurs de recherche.la source