Excel képlet: Összeillő oszlopok -

Általános képlet

=SUMPRODUCT(data*(headers=A1))

Összegzés

Az oszlopokban szereplő értékek összegzéséhez egyező oszlopfejlécek összeegyeztetésével használhatja a SUMPRODUCT függvényen alapuló képletet. A bemutatott példában a J5 képlete a következő:

=SUMPRODUCT(data*(LEFT(headers)=J4))

ahol az "adatok" a B5: G14 elnevezett tartomány, a "fejlécek" pedig a B4: G4 elnevezett tartományok.

A képlet összegzi azokat az oszlopokat, ahol a fejlécek "a" -val kezdődnek, és 201-et adnak vissza.

Magyarázat

Lényegében ez a képlet a SUMPRODUCT függvényre támaszkodik, hogy összeadja az értékeket a megnevezett "adatok" C5: G14 tartomány oszlopaiban. Ha az összes adatot egyetlen tartományban adnák meg a SUMPRODUCT-nak, akkor az eredmény a tartomány összes értékének összege lesz:

=SUMPRODUCT(data) // all data, returns 387

Szűrő oszlopfejlécek - „A” betűvel kezdődő fejlécek - illesztésével történő alkalmazásához a BAL funkciót így használjuk:

LEFT(headers)=J4) // must begin with "a"

Ez a kifejezés az IGAZ értéket adja vissza, ha az oszlopfejléc "a" -val kezdődik, és ha nem, akkor a FALSE értéket. Az eredmény egy tömb:

(TRUE,TRUE,FALSE,FALSE,TRUE,FALSE)

Láthatja, hogy az 1,2 és 5 értékek megfelelnek az "a" betűvel kezdődő oszlopoknak.

A SUMPRODUCT oldalon ezt a tömböt megszorozzuk "adatokkal". A műsorszórás miatt az eredmény egy kétdimenziós tömb:

(8,10,0,0,7,0;9,10,0,0,10,0;8,6,0,0,6,0;7,6,0,0,6,0;8,6,0,0,6,0;10,11,0,0,7,0;7,8,0,0,8,0;2,3,0,0,3,0;3,4,0,0,4,0;7,7,0,0,4,0)

Ha ezt a tömböt egy táblázatban jelenítjük meg, akkor könnyen belátható, hogy csak az "a" betűvel kezdődő oszlopok értékei élték túl a műveletet, az összes többi oszlop nulla. Más szavakkal, a szűrő megőrzi az érdeklődésre számot tartó értékeket, és a többit "törli":

A001 A002 B001 B002 A003 B003
8. 10. 0 0 7 0
9. 10. 0 0 10. 0
8. 6. 0 0 6. 0
7 6. 0 0 6. 0
8. 6. 0 0 6. 0
10. 11. 0 0 7 0
7 8. 0 0 8. 0
2 3 0 0 3 0
3 4 0 0 4 0
7 7 0 0 4 0

Csak egyetlen tömb feldolgozásával a SUMPRODUCT visszaadja az összes érték összegét, 201-et.

Összegzés pontos egyezés alapján

A fenti példa bemutatja, hogyan lehet összegezni az egy vagy több konkrét karakterrel kezdődő oszlopokat. A pontos egyezés alapján oszlop összegzéséhez használhat egy egyszerűbb képletet, mint ez:

=SUMPRODUCT(data*(headers=J4))

érdekes cikkek...