Minulla on sarakkeessa
R luokitteleva tekijä Asia1; Asia2; Asia3; Asia4; Asia5;
S euromääräisiä summia (=EURO)
T luokitteleva tekijä Toimija1, Toimija2, Toimija3 (=OLOSUHDE)
U aika vuosina (=VUOSI)
Tavoitteena on saada laskettua:
Montako € vuonna 2020 kohdistuu Toimija1:llle, tilanteessa jossa toteutuu Asia1 TAI Asia2.
Asia1 ja Asia2 ovat tekstimuotoisia.
Saan ratkaisuta tämän summa.jos tai summa.jos.joukko kaavoilla siten, että laadin jokaiselle ainutlaatuiselle ehtoyhdistelmälle oman summa.jos kaavan ja lasken ne yhteen.
Eli solun kaava voisi näyttää jotensakin tällaiselta (alla oleva kaava on esimerkki)
=SUMMA.JOS.JOUKKO(EURO;TA;$B585;VUOSI;$A$230;KK;E$109;OLOSUHDE;$S$123) SUMMA.JOS.JOUKKO(EURO;TA;$B585;VUOSI;$A$230;KK;E$109;OLOSUHDE;$S$124) SUMMA.JOS.JOUKKO(EURO;TA;$B585;VUOSI;$A$230;KK;E$109;OLOSUHDE;$S$125) SUMMA.JOS.JOUKKO(EURO;TA;$B585;VUOSI;$A$230;KK;E$109;OLOSUHDE;$S$126) SUMMA.JOS.JOUKKO(EURO;TA;$B585;VUOSI;$A$230;KK;E$109;OLOSUHDE;$S$127) SUMMA.JOS.JOUKKO(EURO;TA;$B585;VUOSI;$A$230;KK;E$109;OLOSUHDE;$S$128) SUMMA.JOS.JOUKKO(EURO;TA;$B585;VUOSI;$A$230;KK;E$109;OLOSUHDE;$S$129) SUMMA.JOS.JOUKKO(EURO;TA;$B585;VUOSI;$A$230;KK;E$109;OLOSUHDE;$S$130) SUMMA.JOS.JOUKKO(EURO;TA;$B585;VUOSI;$A$230;KK;E$109;OLOSUHDE;$S$131) SUMMA.JOS.JOUKKO(EURO;TA;$B585;VUOSI;$A$230;KK;E$109;OLOSUHDE;$S$132)
eli yhteenlaskettavat summafunktiot ovat identtiset pois lukien argumentti OLOSUHDE. Eli haaveenani on rakentaa kaava, jossa viimeinen kohta olisi ns. TAI -muotoinen
=SUMMA.JOS.JOUKKO(EURO;TA;$B585;VUOSI;$A$230;KK;E$109;OLOSUHDE;$S$123 tai ;$S$124 tai $S$125 tai $S$126 tai jne)
Olen kikkaillut tämän muotoisella kaavalla:
=SUMMA(SUMMA.JOS.JOUKKO(S:S;R:R;{"Asia1";"Asia2"};T:T;"Toimija1";U:U;"2020"))
Silmämääräisesti kaava on toimiva, mutta... Kun tein tarkastuslaskennan filtteröimällä alkuperäistä dataa ja tekemällä perinteisen A1 A2 A3 -tyyppisen yhteenlaskun, tulos erosi kaavalla tehdystä.
Vähensin yhden rajoittavan ehdon pois ja tein uudelleen tarkastuslaskennan numeerinen ero oli yhä sama
Onko muita mahdollisia virhelähteitä, kuin se, että laskettava data ei silmämääräisestä samankaltaisuudesta huolimatta ole identtistä?
Ongelmia Summa.jos.joukko -kaavassa
5
156
Vastaukset
- Anonyymi
Tuollaisen kannattaa todellakin käyttää Excelin 'Pivot Table' toimintoa. Hyvä ohje: http://www.cpearson.com/Excel/pivots.htm
- Anonyymi
Pivot ei ole ratkaisu. Datasisältö muuttuu ja rivimäärä lisääntyy. Vanhan kokemuksen mukaa Pivotilla graafit pitäisi piirtää joka kerta uudestaan.
Lisäksi minua kiinnostaa tämän ongelman ratkaisu myös akateemisesti. - Anonyymi
Anonyymi kirjoitti:
Pivot ei ole ratkaisu. Datasisältö muuttuu ja rivimäärä lisääntyy. Vanhan kokemuksen mukaa Pivotilla graafit pitäisi piirtää joka kerta uudestaan.
Lisäksi minua kiinnostaa tämän ongelman ratkaisu myös akateemisesti.Pivot taulun/graafit voi päivittää, ei niitä tarvitse uudelleen luoda. Rivejä voi myös lisätä (Insert/Row) datakenttiin ja päivittyy automaattisesti. Jos vain ottaa käyttöön datakentän alla olevan tyhjän rivin niin se ei tietenkään automaattisesti päivity mukaan.
Silloin kun teen tuonkaltaista ilman Pivot-taulua niin otan käytöön lisää sarakkeita tarpeen mukaan, en siis yritä latia maratoniformulaa. Tuossa tapauksessa esimerkiksi sarake jossa on =OR(S:S="aska1",T:T ="aska2") palauttaa true/false ja tekee haluamasi tai-funktion, ehdot eivät titetenkään tarvitse olla literaalina. Ja sitten lisää sarake jossa =IF( lauseella palautetaan summa tai nolla, riippuen edellisestä. Ja tuon sarakke sitten funktioon =SUM( - Anonyymi
Anonyymi kirjoitti:
Pivot taulun/graafit voi päivittää, ei niitä tarvitse uudelleen luoda. Rivejä voi myös lisätä (Insert/Row) datakenttiin ja päivittyy automaattisesti. Jos vain ottaa käyttöön datakentän alla olevan tyhjän rivin niin se ei tietenkään automaattisesti päivity mukaan.
Silloin kun teen tuonkaltaista ilman Pivot-taulua niin otan käytöön lisää sarakkeita tarpeen mukaan, en siis yritä latia maratoniformulaa. Tuossa tapauksessa esimerkiksi sarake jossa on =OR(S:S="aska1",T:T ="aska2") palauttaa true/false ja tekee haluamasi tai-funktion, ehdot eivät titetenkään tarvitse olla literaalina. Ja sitten lisää sarake jossa =IF( lauseella palautetaan summa tai nolla, riippuen edellisestä. Ja tuon sarakke sitten funktioon =SUM(Jeps; Apusarakkeen/-taulun kautta saa ratkaistua ongelman. Tätä tulen käyttämään, mikäli en löydä "kauniimpaa" ratkaisua.
Onko tietoa siitä onko tämän muotoinen kaava ylipäätöön mahdollista saada toimimaan?
=SUMMA(SUMMA.JOS.JOUKKO(S:S;R:R;{"Asia1";"Asia2"};T:T;"Toimija1";U:U;"2020")) - Anonyymi
Anonyymi kirjoitti:
Jeps; Apusarakkeen/-taulun kautta saa ratkaistua ongelman. Tätä tulen käyttämään, mikäli en löydä "kauniimpaa" ratkaisua.
Onko tietoa siitä onko tämän muotoinen kaava ylipäätöön mahdollista saada toimimaan?
=SUMMA(SUMMA.JOS.JOUKKO(S:S;R:R;{"Asia1";"Asia2"};T:T;"Toimija1";U:U;"2020"))Kaipa sen saa toimimaan, esimerkistäsi saattaa puuttuu jokin/joitakin vertaluoperaattoreita.
Mielestäni Excelissä oleellista on selkeys/loogisuus, siten että sheetin rakenne on oivallettavissa nopeasti vielä vuosienkin päästä. Se on aina kaikkein kaunein ratkaisu.
Käytettyjen cellien lukumäärän minimointi vie maratoniformuloihin, joiden tehtävää on vaikea myöhemmin selvittää, ja ne pidentää uudellenlaskenta-aikaa verrattuna siihen että käyttää rivejä/sarakkeita vapautuneesti. Ns apurivit/sarakkeet voi myös piilottaa jos ne häiritsevät.
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Eutanasia - miksi eläimelle sallitaan armokuolema, mutta ihmiselle ei?
Olen pitkään ihmetellyt yhtä asiaa Suomessa. Kun koira kärsii parantumattomasta sairaudesta ja kovista kivuista, eläinlä2511471Veli Sofia teki urosmehiläisen työn
Paljastaessaan kuinka TPS:ssä ei joukkuehenki toimi sooloilijoiden vuoksi, jonka takia koko seura ei pärjää kilpailussa524033Unisex-vessat
Ahdistaa. Miksi kaikki pitää tasapäistää tasa-arvon nimissä? Tasa-arvo on sitä, että kunnioitetaan sukupuolien erilaisu1163237Sosiaalidemokratia romahtanut kautta maailman
nuoret eivät enää kannata järjetöntä aatetta, joten demarien täytyy hakea kannattajia mamuista. Ruotsin sos.demit jo kie1662547Miksi Seta ja Sofia Virta ei vaadi muslimeita kunnioittamaan priden-arvoja?
Kuten tiedetään niin islam ei hyväksy sitä mitä pride edustaa. Seta-pomo Mikkonen nosti hirveän äläkän kun yksi tepsin1082286Vastuun ottaminen omasta hyvinvoinnista
Olen huomannut tuttavapiirissäni ihmisiä, joilla on mt-diagnooseja. Sen sijaan, että millekään asialle yritettäisiin teh2061855Sofia Virralle täydet 12 pistettä!
Kun ei jäänyt mukaan vähemmistöjen sortamista epäsuorasti tukevaan joukkueeseen. Urheilijoiden pitäisi olla esikuvia.3151130- 66928
Miksi Hotelli Kainuuta dissataan?
Ihmetyttää tämä jatkuva yhden yrityksen arvosteleminen. Ikäänkuin mikään ei olisi hyvin. Kuitenkin yritys työllistää, ta18905Toisten elämän moralisointi
Eikö kukin voisi keskittyä lähinnä omaan elämäänsä? Jos jollakulla muulla on tunteita, ajatuksia, tai tekoja oman suhte143815