
Všeobecný vzorec
=SUMPRODUCT(COUNTIF(INDIRECT("'"&sheets&"'!"&rng),criteria))
Zhrnutie
Ak chcete počítať zhody v celom zošite, môžete použiť vzorec založený na funkciách COUNTIF a SUMPRODUCT. V zobrazenom príklade je vzorec v D5:
=SUMPRODUCT(COUNTIF(INDIRECT("'"&sheets&"'!A1:Z10000"),B5))
kde „listy“ je pomenovaný rozsah B8: B10.
Kontext
Tento zošit má štyri pracovné listy. Tri z pracovných hárkov „List1“, „List2“ a „List3“ obsahujú 1000 náhodných krstných mien v tabuľke, ktorá vyzerá takto:
Poznámka: rozsah, ktorý používame vo vzorci, A1: Z10000, je ľubovoľný a mal by byť upravený tak, aby vyhovoval vašim údajom.
Vysvetlenie
Pri práci zvnútra von máme najskôr tento výraz vo vnútri funkcie INDIRECT:
"'"&sheets&"'!A1:Z10000"
Pretože „sheets“ je pomenovaný rozsah, ktorý obsahuje „Sheet1“, „Sheet2“ a „Sheet3“, po vyhodnotení výrazu dostaneme také pole:
("'Sheet1'!A1:Z10000";"'Sheet2'!A1:Z10000";"'Sheet3'!A1:Z10000")
Vo vnútri poľa máme tri hodnoty a každá z nich je názov hárka spojený zreťazením do rozsahu A1: Z10000. Všimnite si, že toto sú všetko textové hodnoty.
Ďalej sa funkcia INDIRECT používa na prevod každej textovej hodnoty na správny odkaz, ktoré sa dodávajú funkcii COUNTIF ako argument rozsahu, spolu s hodnotou v D5 pre kritériá.
Pretože sme dali COUNTIF tri samostatné rozsahy, dostaneme späť tri výsledky v poli takto:
(5;6;5)
Každá položka sa počíta pre jeden hárok.
Nakoniec sa program SUMPRODUCT použije na sčítanie poľa a vráti výsledok 16.