Excel-formel: 3D SUMIF til flere regneark -

Indholdsfortegnelse

Generisk formel

=SUMPRODUCT(SUMIF(INDIRECT("'"&sheets&"'!"&"rng"),criteria,INDIRECT("'"&sheets&"'!"&"sumrng")))

Resumé

For at opsummere identiske områder, der findes i separate regneark, alt sammen i en formel, kan du bruge SUMIF-funktionen med INDIRECT, pakket ind i SUMPRODUCT. I det viste eksempel er formlen i C9:

=SUMPRODUCT(SUMIF(INDIRECT("'"&sheets&"'!"&"D4:D5"),B9,INDIRECT("'"&sheets&"'!"&"E4:E5")))

Forklaring

Dataene på hvert af de tre ark, der behandles, ser sådan ud:

Først og fremmest skal du bemærke, at du ikke kan bruge SUMIF'er med en "normal" 3D-reference som denne:

Sheet1:Sheet3!D4:D5

Dette er standard "3D-syntaks", men hvis du prøver at bruge det med SUMIF, får du en #VALUE-fejl. Så for at løse dette problem kan du bruge et navngivet interval "ark", der viser hvert ark (regnearkfane), som du vil medtage. For at opbygge referencer, som Excel vil fortolke korrekt, er vi nødt til at sammenkæde arknavne til de områder, vi har brug for at arbejde med, og brug derefter INDIRECT for at få Excel til at genkende dem korrekt.

Da det navngivne område "ark" indeholder flere værdier (dvs. det er en matrix), er resultatet af SUMIF i dette tilfælde også et array (undertiden kaldet et "resulterende array). Så vi bruger SUMPRODUCT til at håndtere det, da SUMPRODUCT har evnen til at håndtere arrays indbygget uden at kræve Ctrl-Shift-Enter, som mange andre matrixformler.

Anden måde

Eksemplet ovenfor er noget kompliceret. En anden måde at håndtere dette problem på er at lave en "lokal" betinget sum på hvert ark og derefter bruge en almindelig 3D-sum til at tilføje hver værdi på fanen Resume.

For at gøre dette skal du tilføje en SUMIF-formel til hvert arkark, der bruger en kriteriecelle på oversigtsarket. Når du derefter ændrer kriterierne, opdateres alle sammenkædede SUMIF-formler.

Gode ​​links

Hr. Excel-diskussion

Interessante artikler...