web-dev-qa-db-fra.com

Récapitulation des montants si une ligne contient une clé dans une autre feuille

J'ai deux feuilles dans un document Google Sheets:

| Key | Amount  |
|-----|---------|
| ABC |    1    |
| DEF |    2    |
| GHI |    3    |


|  Keys |
|-------|
|  ABC  |
|  XYZ  |
|  JKL  |
|  GHI  |

Maintenant, j'aimerais ajouter les montants dans les lignes de la première feuille mais seulement où la clé est contenue n'importe où dans la deuxième feuille. Pour l'exemple ci-dessus, la somme serait 4 (touches ABC avec le montant 1 et GHI avec le montant 3).

J'ai essayé QUERY, SUMIF et VLOOKUP mais je n'ai pas trouvé de solution. Toute aide serait grandement appréciée!

1
Jonas
=SUM(IFERROR(ARRAYFORMULA(IF(LEN(A2:A); 
 VLOOKUP(A2:A; Sheet1!A2:B; 2; 0); )); ))

enter image description here


  • VLOOKUP recherche A2:A dans Sheet1!A2:B et renvoie 2nd colonne de Sheet1!A2:B telle qu'elle est, par exemple. 0 pour non trié
  • LEN(A2:A) vérifie le nombre d'entrées comprises dans la plage qui s'arrête ARRAYFORMULA après la dernière entrée
  • ARRAYFORMULA s'assure que la formule entière ne s'arrête pas après la 1ère ligne
  • IFERROR supprime toutes les erreurs s'il n'y a pas de correspondance dans VLOOKUP partie
  • SUM résume tout
1
user0

Vous voulez probablement quelque chose comme ci-dessous. Entre les crochets, la première partie est l'expression logique 2nd est ce qu'il faut renvoyer si vrai et le dernier est ce qu'il faut renvoyer si faux. Si ce n'est pas "ABC", alors testera pour voir si c'est "DEF". Si les deux sont faux, il retournera 0.

=if(AA7="ABC",123,IF(AA7="DEF",456,0))

Faites-moi savoir si cela doit être clarifié.

1
Nyko

À côté des clés de votre deuxième feuille de calcul, ajoutez la formule suivante (en supposant que les clés se trouvent dans la colonne A et le montant dans la colonne B).

=SUMIFS(Sheet1!B:B,Sheet1!A:A,"="&Sheet2!A1)

Mise à jour: pour calculer la somme de toutes les correspondances, utilisez ce qui suit (en supposant que vos libellés et valeurs figurent sur les colonnes A et B de la feuille Sheet1 et que les libellés à additionner se trouvent sur la colonne A de la feuille Sheet2)

=sum(ArrayFormula(sumif(Sheet1!A:A,"="&Sheet2!A:A ,Sheet1!B:B)))
1
Oren Pinsky