Hälsokontroll av kalkylark

fi-kuntaliitto-valtionosuus.xlsx
2026-08-01 12:54 UTC
Om arbetsboken: Kommunförbundets statsandelskalkylator 2026 — verktyget Finlands Kommunförbund publicerar för att kommunerna ska kunna uppskatta sin statsandelsfinansiering i ekonomiplaneringen; besluten fattas av finansministeriet och undervisnings- och kulturministeriet, se https://www.kuntaliitto.fi/talous-ja-elinvoima/kuntatalous-ja-valtio/valtionosuudet/valtionosuuslaskelmat. Ett uppskattat statsandelsbelopp skulle kunna landa olika beroende på om kedjan avrundar på vägen eller inte. Belägget: beräkningskedjan mot 7.OKM-vos!K55 (undervisnings- och kulturministeriets modul) avrundar i 2 av 7 bidragande steg (F15, kritisk). Därtill nio odokumenterade trösklar (F05). Differensens storlek är inte härledd här — därför står ingen siffra.
Bedömning
17 fynd, varav 1 allvarliga

1 fynd av allvarligaste graden — ett mönsterbrott av en typ som kan ge fel resultat utan att något felmeddelande syns.

Inkonsekvent avrundning i beräkningskedja

Berörda blad: 7.OKM-vos

1
Allvarliga
6
Varningar
10
Upplysningar
Analysens täckning

Samtliga 333 formelceller kunde tolkas och ingick i analysen. Formler utanför analysytan redovisas alltid öppet i rapporten — i det här arket finns inga sådana.

1 död namndefinition togs bort före inläsningen och redovisas under "Döda namndefinitioner".

Fynd

F15 Inkonsekvent avrundning i beräkningskedja Allvarliga
Stegen som matar samma beräkning avrundar olika: vissa avrundar, andra inte, eller till olika antal decimaler. Ören som försvinner och återuppstår olika beroende på väg är den vanligaste orsaken till att rapporter 'inte går ihop' med underlaget.
Celler: 7.OKM-vos!K55
Detalj: chain toward 7.OKM-vos!K55 rounds in 2 of 7 contributing steps
F01 Hårdkodade konstanter i formler Varningar
Värden som skattesatser eller påslag ligger inbakade direkt i formeln i stället för i en namngiven cell. När värdet ändras måste någon hitta och ändra varje förekomst — missas en enda räknar arket fel utan att det syns.
Celler: 2.Yhteenveto!L59, 2.Yhteenveto!L63, 2.Yhteenveto!L68, 4.Muut lask. kustannukset!I39, 4.Muut lask. kustannukset!I40, 4.Muut lask. kustannukset!I50, 5.Lisäosat!J29, 6.Vähennykset ja lisäykset!G37, 6.Vähennykset ja lisäykset!G39, 6.Vähennykset ja lisäykset!G41, 6.Vähennykset ja lisäykset!G43, 6.Vähennykset ja lisäykset!G45, 6.Vähennykset ja lisäykset!G47, 6.Vähennykset ja lisäykset!G49, 6.Vähennykset ja lisäykset!G51, 6.Vähennykset ja lisäykset!G53, 6.Vähennykset ja lisäykset!G55, 6.Vähennykset ja lisäykset!G57, 6.Vähennykset ja lisäykset!G59, 6.Vähennykset ja lisäykset!G61, 7.OKM-vos!F34, 8.Lukio!J22, 8.Lukio!K22, 8.Lukio!K23, 8.Lukio!L22, 8.Lukio!L23, 8.Lukio!J23, 8.Lukio!J29, 8.Lukio!I33, 8.Lukio!I34
Detalj: endemic: 26 F01 findings across 30 cells collapsed to one — routine pattern reviewed as a class, not itemized (all cells retained in the JSON report)
F02 Formel avviker från mönstret Varningar
I en rad eller kolumn där cellerna följer samma beräkningsmönster gör den här cellen något annat. Det är ofta resten av en manuell justering eller en kopiering som gått snett — och just sådana celler brukar ligga bakom summeringar som inte stämmer.
Celler: 2.Yhteenveto!M62
Detalj: formula deviates from the pattern of 27 neighbours: L62/H11
F02 Formel avviker från mönstret Varningar
I en rad eller kolumn där cellerna följer samma beräkningsmönster gör den här cellen något annat. Det är ofta resten av en manuell justering eller en kopiering som gått snett — och just sådana celler brukar ligga bakom summeringar som inte stämmer.
Celler: 2.Yhteenveto!M63
Detalj: formula deviates from the pattern of 27 neighbours: L63/H11
F02 Formel avviker från mönstret Varningar
I en rad eller kolumn där cellerna följer samma beräkningsmönster gör den här cellen något annat. Det är ofta resten av en manuell justering eller en kopiering som gått snett — och just sådana celler brukar ligga bakom summeringar som inte stämmer.
Celler: 6.Vähennykset ja lisäykset!H20
Detalj: formula deviates from the pattern of 6 neighbours: (INDEX(vl_toimeentulotuki,MATCH($E$8,kunta,0),1,1))
F10 Logik beror på dolt innehåll Varningar
Beräkningar hämtar värden från dolda blad, rader eller kolumner. Det som styr resultatet syns inte vid granskning — en vanlig plats för bortglömda antaganden och gamla justeringar.
Celler: 2.Yhteenveto!H11, 2.Yhteenveto!L27, 2.Yhteenveto!L28, 2.Yhteenveto!L29, 2.Yhteenveto!L30, 2.Yhteenveto!L34, 2.Yhteenveto!L38, 2.Yhteenveto!L54, 3.Ikärakenne!F13, 3.Ikärakenne!F14, 3.Ikärakenne!F15, 3.Ikärakenne!F16, 3.Ikärakenne!F17, 3.Ikärakenne!F18, 4.Muut lask. kustannukset!G14, 4.Muut lask. kustannukset!F19, 4.Muut lask. kustannukset!G19, 4.Muut lask. kustannukset!F20, 4.Muut lask. kustannukset!F26, 4.Muut lask. kustannukset!G31, 4.Muut lask. kustannukset!F37, 4.Muut lask. kustannukset!G37, 4.Muut lask. kustannukset!G44, 4.Muut lask. kustannukset!G53, 4.Muut lask. kustannukset!F58, 4.Muut lask. kustannukset!G58, 4.Muut lask. kustannukset!F66, 4.Muut lask. kustannukset!G66, 4.Muut lask. kustannukset!F67, 5.Lisäosat!H13, 5.Lisäosat!H19, 5.Lisäosat!G25, 5.Lisäosat!F32, 5.Lisäosat!G32, 5.Lisäosat!F33, 5.Lisäosat!G33, 5.Lisäosat!G40, 5.Lisäosat!F42, 5.Lisäosat!G42, 6.Vähennykset ja lisäykset!H12, 6.Vähennykset ja lisäykset!H20, 6.Vähennykset ja lisäykset!H22, 6.Vähennykset ja lisäykset!H26, 6.Vähennykset ja lisäykset!H28, 6.Vähennykset ja lisäykset!H29, 6.Vähennykset ja lisäykset!H30, 6.Vähennykset ja lisäykset!H31, 6.Vähennykset ja lisäykset!H62, 6.Vähennykset ja lisäykset!H63, 7.OKM-vos!H80
Detalj: endemic: 50 F10 findings across 50 cells collapsed to one — routine pattern reviewed as a class, not itemized (all cells retained in the JSON report)
F20 Kopierade blad som divergerat Varningar
Samma formelmönster finns på flera blad, men bladen har olika utsträckning. Det är spåret av ett kopierat blad som sedan vuxit eller krympt — formler som täckte all data på ett blad täcker den inte längre på ett annat, utan varning.
Celler: 3.Ikärakenne!I13, 4.Muut lask. kustannukset!J16, 5.Lisäosat!K15
Detalj: 1 shared formula pattern(s) of >=5 cells on sheets with diverging structure: 3.Ikärakenne (used extent J22) vs 4.Muut lask. kustannukset (used extent K75) vs 5.Lisäosat (used extent K48)
F05 Odokumenterade villkorsgränser Upplysningar
Tröskelvärden i IF-villkor ligger direkt i formeln i stället för i en dokumenterad cell. Gränserna syns inte vid granskning, och ingen vet om 37,5 är ett medvetet beslut eller en kvarglömd siffra.
Celler: 4.Muut lask. kustannukset!I39
Detalj: condition thresholds 1, 3 hardcoded in IF(OR($G$31=1,$G$31=3),$F$9*$H$38*0.07,0)
F05 Odokumenterade villkorsgränser Upplysningar
Tröskelvärden i IF-villkor ligger direkt i formeln i stället för i en dokumenterad cell. Gränserna syns inte vid granskning, och ingen vet om 37,5 är ett medvetet beslut eller en kvarglömd siffra.
Celler: 4.Muut lask. kustannukset!I40
Detalj: condition thresholds 1, 3 hardcoded in IF(OR($G$31=1,$G$31=3),$H$38*F37*0.93,0)
F05 Odokumenterade villkorsgränser Upplysningar
Tröskelvärden i IF-villkor ligger direkt i formeln i stället för i en dokumenterad cell. Gränserna syns inte vid granskning, och ingen vet om 37,5 är ett medvetet beslut eller en kvarglömd siffra.
Celler: 4.Muut lask. kustannukset!I50
Detalj: condition thresholds 2, 1 hardcoded in IF($G$44=2,3*$H$49*$F$9,IF($G$44=1,$H$49*$F$9,0))
F05 Odokumenterade villkorsgränser Upplysningar
Tröskelvärden i IF-villkor ligger direkt i formeln i stället för i en dokumenterad cell. Gränserna syns inte vid granskning, och ingen vet om 37,5 är ett medvetet beslut eller en kvarglömd siffra.
Celler: 4.Muut lask. kustannukset!I55
Detalj: condition thresholds 3 hardcoded in IF($G$44=3,$H$54*$G$53,0)
F05 Odokumenterade villkorsgränser Upplysningar
Tröskelvärden i IF-villkor ligger direkt i formeln i stället för i en dokumenterad cell. Gränserna syns inte vid granskning, och ingen vet om 37,5 är ett medvetet beslut eller en kvarglömd siffra.
Celler: 5.Lisäosat!J29
Detalj: condition thresholds 1.5, 1 hardcoded in IF(G25>=1.5,3*($H$24*$F$9*G25),IF(G25>=1,1.5*($H$24*$F$9*G25),($H$24*$F$9*G25)))
F05 Odokumenterade villkorsgränser Upplysningar
Tröskelvärden i IF-villkor ligger direkt i formeln i stället för i en dokumenterad cell. Gränserna syns inte vid granskning, och ingen vet om 37,5 är ett medvetet beslut eller en kvarglömd siffra.
Celler: 5.Lisäosat!J44
Detalj: condition thresholds 1 hardcoded in IF(G40=1,$H$43*$F$9*(F42/F9),0)
F05 Odokumenterade villkorsgränser Upplysningar
Tröskelvärden i IF-villkor ligger direkt i formeln i stället för i en dokumenterad cell. Gränserna syns inte vid granskning, och ingen vet om 37,5 är ett medvetet beslut eller en kvarglömd siffra.
Celler: 8.Lukio!J22
Detalj: condition thresholds 59, 201, 60, 200, 199, 39, 40 hardcoded in IF(K19="Kyllä",IF(AND(I22>59,I22<201),100+(200-I22)*0.4,IF(AND(I22>0,I22<60),156+(60-I22)*2.5,IF(I22>200,100,0))),IF(I22>199,100,IF(AND(I22<200,I22>59),100+(200-I22)*0.2,IF(AND(I22<60,I22>39),128+(60-I22)*1.25,IF(AND(I22<40,I22>0),153,0)))))
F05 Odokumenterade villkorsgränser Upplysningar
Tröskelvärden i IF-villkor ligger direkt i formeln i stället för i en dokumenterad cell. Gränserna syns inte vid granskning, och ingen vet om 37,5 är ett medvetet beslut eller en kvarglömd siffra.
Celler: 8.Lukio!K22, 8.Lukio!K23
Detalj: condition thresholds 40, 60, 200, 199 hardcoded in IF(I22=0,0,IF(I22<40,206,IF(I22<60,100+0.4*(200-I22)+2.1*(60-I22),IF(I22<200,100+0.4*(200-I22),IF(I22>199,100))))) [same pattern in 2 cells]
F05 Odokumenterade villkorsgränser Upplysningar
Tröskelvärden i IF-villkor ligger direkt i formeln i stället för i en dokumenterad cell. Gränserna syns inte vid granskning, och ingen vet om 37,5 är ett medvetet beslut eller en kvarglömd siffra.
Celler: 8.Lukio!J23
Detalj: condition thresholds 59, 201, 60, 200, 199, 39, 40 hardcoded in IF(K19="Kyllä",IF(AND(I23>59,I23<201),100+(200-I23)*0.4,IF(AND(I23>0,I23<60),156+(60-I23)*2.5,IF(I23>200,100,0))),IF(I23>199,100,IF(AND(I23<200,I23>59),100+(200-I23)*0.2,IF(AND(I23<60,I23>39),128+(60-I23)*1.25,IF(AND(I23<40,I23>0),153,0)))))
F22 Skydd saknas kring känsliga formler Upplysningar
Bladen med formler saknar skrivskydd samtidigt som arket innehåller hårdkodade eller känsliga konstanter. Arkets känsligaste värden kan ändras av vem som helst med filen — utan spår, historik eller varning.
Detalj: no sheet protection on formula sheet(s) 2.Yhteenveto, 3.Ikärakenne, 4.Muut lask. kustannukset, 5.Lisäosat, 6.Vähennykset ja lisäykset, 7.OKM-vos, 8.Lukio, 9. Kaaviot — 30 cells with hardcoded constants (F01) can be edited by anyone with the file

Döda namndefinitioner

Följande definierade namn pekar på raderat innehåll (#REF!) och togs bort före inläsningen — de kan inte längre beräknas och redovisas därför här:

voihancee = #REF!

Om arbetsboken

BladTietoa aineistosta, 1.Käyttöohjeet, 2.Yhteenveto, 3.Ikärakenne, 4.Muut lask. kustannukset, 5.Lisäosat, 6.Vähennykset ja lisäykset, 7.OKM-vos, 8.Lukio, 9. Kaaviot, tiedot
Formelceller333
Inputceller16261
Dolda blad1

Metod

Analysen läser arkets formler och struktur — aldrig cellvärden eller data.

Verktygsversion0.1.3
Analysdatum2026-08-01 12:54 UTC
Arkversion2026 (daterad 09-01-2026)
Arket nedladdat2026-07-27

Vad analysen inte ser

Den här analysen ser mönsterbrott: trasiga referenser, överskrivna formler, odokumenterade konstanter, avvikare i beräkningsmönster. Vad den inte kan se är fel i avsikt — när alla celler konsekvent räknar på fel sätt, eller när en etikett lovar något annat än formeln gör. Sådant kräver granskning begrepp för begrepp, mot någon som vet vad arket är tänkt att göra. En rapport utan fynd betyder därför "inga mönsterbrott hittade" — inte "färdiggranskat".

Nästa steg