Hei,
yksinkertaisesti omat aivot eivät tähän taivu, joten apuja tarvitaan.
Millä konstilla saisin tehtyä ko. kaavasta huomattavasti lyhyemmän?
=SUMMA.JOS(Vu1;AY5)*G$5 SUMMA.JOS(Vu2;AY5)*G$6 SUMMA.JOS(Vu3;AY5)*G$7 SUMMA.JOS(Vu4;AY5)*G$8 SUMMA.JOS(Vu5;AY5)*G$9 SUMMA.JOS(Vu6;AY5)*G$10 SUMMA.JOS(Vu7;AY5)*G$11 SUMMA.JOS(Vu8;AY5)*G$12 SUMMA.JOS(Vu9;AY5)*G$13 SUMMA.JOS(Vu10;AY5)*G$14 SUMMA.JOS(Vu11;AY5)*G$15 SUMMA.JOS(Vu12;AY5)*G$16 SUMMA.JOS(Vu13;AY5)*G$17 SUMMA.JOS(Vu14;AY5)*G$18 SUMMA.JOS(Vu15;AY5)*G$19 SUMMA.JOS(Vu16;AY5)*G$20 SUMMA.JOS(Vu17;AY5)*G$21 SUMMA.JOS(Vu18;AY5)*G$22 SUMMA.JOS(Vu19;AY5)*G$23 SUMMA.JOS(Vu20;AY5)*G$24 SUMMA.JOS(Vu21;AY5)*G$25 SUMMA.JOS(Vu22;AY5)*G$26 SUMMA.JOS(Vu23;AY5)*G$27 SUMMA.JOS(Vu24;AY5)*G$28 SUMMA.JOS(Vu25;AY5)*G$29 SUMMA.JOS(Vu26;AY5)*G$30 SUMMA.JOS(Vu27;AY5)*G$31 SUMMA.JOS(Vu28;AY5)*G$32 SUMMA.JOS(Vu29;AY5)*G$33 SUMMA.JOS(Vu30;AY5)*G$34 SUMMA.JOS(Vu31;AY5)*G$35 SUMMA.JOS(Vu32;AY5)*G$36 SUMMA.JOS(Vu33;AY5)*G$37 SUMMA.JOS(Vu34;AY5)*G$38 SUMMA.JOS(Vu35;AY5)*G$39 SUMMA.JOS(Vu36;AY5)*G$40 SUMMA.JOS(Vu37;AY5)*G$41 SUMMA.JOS(Vu38;AY5)*G$42 SUMMA.JOS(Vu39;AY5)*G$43 SUMMA.JOS(Vu40;AY5)*G$44 SUMMA.JOS(Vu41;AY5)*G$45
Tässä tulee Excelin rajat vastaan ja kaavaa ei saa pidemmäksi, kuin mihin olisi tarve. Kaavassa oleva esim. Vu1 on nimetty solualue.
Olen myös pähkäillyt hieman, että jos saisin itse tehdyn funktion kautta tuota jotenkin toimimaan, joten jos jollakin olisi tietoa ja taitoa tähän vaihtoehtoon, niin mielelläni olisin erittäin kiitollinen.
Etukäteen kiittäen,
Tomcraft
Kaavion yksinkertaistaminen
2
309
Vastaukset
- gaavoittaja
ihan yhtä kaavaa. Tuo SUMMA.JOS()-funktio ei varmaankaan noin pelaa. Siitä puuttuu yksi osatekijä.
=SUMMA.JOS(alue;ehto;[summa alue]), eli kaava pitää olla
=SUMMA.JOS(Vu1;"mikä Vu1 pitää olla";"mistä lasketaan jos ehto täyttyy")nyt 30 argumenttiä käytössä ja nimeällä kaavan saat esim. kaava1 ja teet sitten uuden nimetyn kaavan kaava2 jne. ja sitten vaan lasket summana kaava1 kaava2 jne.
Nyt ei ole rajoituksista kiinni vaan koneen muistista
matriisikaavana SHIFT CTRL ENTER
=SUMMA(1*(vu1=G5)*G5;(1*(vu2=G6))*G6;(1*(vu3=G7))*G7;(1*(vu4=G8))*G8)
VBA oma funktio
Nimialue on solualue johon kirjoitat nimetyt solualueet. Viereisiin soluihin sitten hakuehdot ja kertoimet
soluun mihin haluat tuloksen kaavaksi =Laskejos(C17:C100)
eli
solualueella C17:C100 on nimetyt alueet
solualueella D17:D100 on hakuehdot
solualueella E17:E100 on kertoimet
moduuliin..
Public Function Laskejos(Nimialue As Range) As Double
Dim Solu As Range
Dim i As Integer
Dim j As Integer
Application.Volatile True
For i = 1 To Nimialue.Count
For Each Solu In Range(Nimialue.Cells(i, 1))
If Solu.Value = Nimialue.Cells(i, 1).Offset(0, 1).Value Then
Laskejos = Laskejos Nimialue.Cells(i, 1).Offset(0, 2).Value
End If
Next
Next
End Function
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
YLE Äänekosken kaupunginjohtaja saa ankaraa arvostelua
Kaupungin johtaja saa ankaraa kritiikkiä äkkiväärästä henkilöstöjohtamisestaan. Uusin häirintäilmoitus päivätty 15 kesä741379Euroopan lämpöennätys, 48,8, astetta, on mitattu Italian Sisiliassa
Joko hitaampikin ymmärtää. Se on aivan liikaa. Ilmastonmuutos on totta Euroopassakin.2431269Martina lähdössä Ibizalle
Eikä Eskokaan tiennyt matkasta. Nyt ollaan jännän äärellä.1521066Asiakas iski kaupassa varastelua tehneen kanveesiin.
https://www.iltalehti.fi/kotimaa/a/33a85463-e4d5-45ed-8014-db51fe8079ec Oikein. Näin sitä pitää. Kyllä kaupoissa valtava2551048- 51765
- 64734
Jos ei tiedä mitä toisesta haluaa
Älä missään nimessä anna mitään merkkejä kiinnostuksesta. Ole haluamatta mitään. Täytyy ajatella toistakin. Ei kukaan em62717Miksi mies tuntee näin?
Eli olen mies ja ihastuin naiseen. Tykkään hänestä ja koskaan hän ei ole ollut minulle ilkeä. Silti ajoittain tunnen kui39698Se nainen näyttää hyvältä vaikka painaisi 150kg
parempi vaan jos on vähän muhkeammassa kunnossa 🤤44671- 30627