Viallisten kaavojen ratkaiseminen

Viallisten kaavojen ratkaiseminen

Jos Excel ei voi ratkaista kaavaa, jota yrität luoda, näkyviin voi tulla seuraavanlainen virheviesti:

Excelin "Ongelma tässä kaavassa" -valintaikkuna

Tämä tarkoittaa, että Excel ei ymmärrä, mitä yrität tehdä, joten haluat ehkä vain poistua toiminnosta ja aloittaa alusta.

Aloita napsauttamalla OK tai sulje virheviesti painamalla ESC.

Palaat takaisin soluun, jossa on rikkoutunut kaava. Se on muokkaustilassa ja Excel korostaa ongelmallisen kohdan. Jos et vieläkään tiedä, mitä tehdä ja haluat aloittaa alusta, paina ESC-näppäintä uudelleen tai napsauta Peruuta-painiketta kaavapalkissa, jolloin poistut muokkaustilasta.

Kaava-palkin Peruuta-painikkeen kuva

Jos et ole varma, mitä voit tehdä tässä vaiheessa tai minkälaista apua tarvitset, voit etsiä samantyyppisiä kysymyksiä Excelin Community-keskustelupalstalta tai lähettää oman kysymyksen.

Linkki Excelin Community-keskustelupalstalle

Jos haluat jatkaa, voit seuraavan tarkistusluettelon vianmääritysvaiheiden avulla selvittää, mikä on ehkä mennyt väärin kaavoissa.

Excel näyttää useita eri hash (#) -virheilmoituksia, kuten #ARVO!, #VIITTAUS!, #LUKU, #PUUTTUU!, #JAKO/0!, #NIMI? ja #TYHJÄ!, osoittamaan, että jokin kaavassa ei toimi oikein. Esimerkiksi #ARVO!-virhe johtuu virheellisestä muotoilusta tai argumenttien sisältämistä ei-tuetuista tietotyypeistä. Tai saat #VIITTAUS!-virheen, jos kaava viittaa soluihin, jotka on poistettu tai korvattu muilla tiedoilla. Vianmäärityksen ohjeet vaihtelevat kunkin virheen osalta.

Huomautus: #### ei ole kaavoihin liittyvä virhe. Se tarkoittaa vain sitä, että sarake ei ole tarpeeksi leveä solun sisällön näyttämiseen. Levennä saraketta vetämällä sitä, tai valitse Aloitus > Muotoile > Sovita sarakkeen leveys.

Kuva Aloitus > Muotoile > Sovita sarakkeen leveys

Lisätietoja virheilmoitusta vastaavasta hash-virheestä on seuraavissa artikkeleissa:

Aina kun avaat laskentataulukon, joka sisältää muiden laskentataulukoiden arvoihin viittaavia kaavoja, sinua pyydetään päivittämään viittaukset tai jättämään ne entiselleen.

Rikkoutuneen viittaukset -valintaikkuna Excelissä

Excel näyttää yllä näkyvän valintaikkunan sen varmistamiseksi, että nykyisen laskentataulukon kaavat viittaavat aina eniten päivitettyyn arvoon siltä varalta, että viittauksen arvo on muuttunut. Voit päivittää viittaukset tai ohittaa, jos et halua päivittää. Vaikka et päivittäisi viittauksia, voit aina päivittää laskentataulukon linkit manuaalisesti milloin tahansa.

Voit aina poistaa valintaikkunan näkymisen käynnistyksen yhteydessä. Voit tehdä tämän valitsemalla Tiedosto > Asetukset > Lisäasetukset > Yleiset ja poistamalla sitten Ehdota automaattisten linkkien päivitystä -valintaruudun valinnan. Napsauta Excel 2007:ssä Office-painike > Excel-asetukset. Office 2007 -painike

Ask-kuva automaattisen linkkiasetuksen päivittämiseksi

Tärkeää: Jos käsittelet kaavojen katkenneita linkkejä ensimmäistä kertaa tai et muista, miten katkenneet linkit korjataan, tai et ole varma, haluatko päivittää viittaukset, lue artikkeli Ulkoisten viittausten (linkkien) päivitysajankohdan valvominen.

Ellei kaava näytä arvoa, toimi seuraavasti:

  • Varmista, että Excel on määritetty näyttämään laskentataulukon kaavat. Napsauta Kaavat-välilehden Kaavan tarkistaminen -ryhmässä Näytä kaavat.

    Vihje: Voit myös käyttää pikanäppäintä Ctrl + ` (Sarkain-näppäimen yläpuolella oleva näppäin). Kun teet näin, sarakkeesi levennetään automaattisesti näyttämään kaavat. Kun palaat takaisin normaalinäkymään, sarakkeet palautetaan entiseen kokoonsa.

  • Jos et pysty ratkaisemaan ongelmaa yllä olevan vaiheen avulla, solu on muotoiltu ehkä tekstiksi. Voit napsauttaa hiiren kakkospainikkeella solua ja valita Muotoile solut > Yleiset (tai Ctrl + 1), ja muuttaa muotoa painamalla sitten F2 > Enter.

  • Jos sarakkeessa on suuri solualue, joka on muotoiltu tekstiksi, valitse alue, käytä haluamaasi lukumuotoa ja siirry kohtaan Tiedot > Sarakkeen teksti > Valmis. Muotoa käytetään kaikissa valituissa soluissa.

    Tiedot > Teksti sarakkeisiin -valintaikkunan kuva

Kun kaava ei suorita laskutoimituksia, sinun on tarkistettava, onko automaattinen laskenta käytössä Excelissä. Kaavat eivät toimi, jos manuaalinen laskenta on otettu käyttöön. Ota automaattinen laskenta käyttöön seuraavasti:

  1. Napsauta Tiedosto-välilehdestä Asetukset ja napsauta sitten Kaavat-luokkaa.

  2. Varmista Laskennan asetukset -osan Työkirjan laskentatila -kohdassa, että Automaattinen on valittuna.

    Automaattisen ja manuaalisen laskennan asetukset -kuva

Katso lisätietoja laskutoimituksista artikkelista Kaavan uudelleenlaskennan, iteraation tai tarkkuuden muuttaminen.

Kehäviittaus tapahtuu, kun kaava viittaa samaan soluun, jossa se sijaitsee. Voit korjata tämän joko siirtämällä kaavan toiseen soluun tai muuttamalla kaavan syntaksin sellaiseksi, että se välttää kehäviittauksia. Joissain tapauksissa saatat kuitenkin tarvita kehäviittauksia, koska niiden ansiosta kaavojasi toistetaan, kunnes tietty lukuehto saavutetaan. Tällöin sinun täytyy ottaa käyttöön Iteratiivinen laskenta.

Katso lisätietoja kehäviittauksista artikkelista Kehäviittauksen etsiminen ja korjaaminen

Jos merkinnän alussa ei ole yhtäläisyysmerkkiä, se ei ole kaava, eikä sitä lasketa — tämä on tavallinen virhe.

Kun kirjoitat soluun esimerkiksi SUMMA(A1:A10), Excel näyttää tekstimerkkijonon SUMMA(A1:A10) kaavan tuloksen sijaan. Jos kirjoitat 11/2, Excel näyttää jakolaskun suorittamisen sijasta päivämäärän, kuten 2.11. tai 2.11.2009.

Voit välttää odottamattomat tulokset aloittamalla funktion aina yhtäläisyysmerkillä. Kirjoita esimerkiksi: =SUMMA(A1:A10 ja =11/2

Kun kaavassa käytetään funktiota, jokaisen alkusulkeen jälkeen täytyy tulla loppusulje, jotta kaava toimii oikein. Varmista siksi, että kaikilla sulkeilla on parinsa. Esimerkiksi kaava =JOS (B5<0),”Ei kelpaa”,B5*1,05) ei toimi, koska loppusulkeita on kaksi ja alkusulkeita vain yksi. Oikea kaava näyttää tältä: =JOS(B5<0,”Ei kelpaa”,B5*1,05).

Excel-funktioilla on argumentteja. Nämä arvot on annettava, jotta funktio toimii oikein. Vain harvat funktiot (kuten PII tai TÄMÄ.PÄIVÄ) eivät hyväksy mitään argumentteja. Varmista, että olet syöttänyt kaikki tarvittavat argumentit. Tarkista kaavasyntaksi, kun kirjoitat funktiota.

Esimerkiksi ISOT-funktiossa voi käyttää vain yhtä tekstimerkkijonoa tai soluviittausta argumenttina: =ISOT("hei") tai =ISOT(C2)

Huomautus: Kun kirjoitat kaavaa, funktion argumentit näkyvät irrallisessa Funktioviittaus-työkalurivissä kaavan alla.

Näyttökuva Funktioviittaus-työkalurivistä
Funktioviittaus-työkalurivi

Jotkin funktiot, kuten SUMMA, edellyttävät vain numeerisia argumentteja. Toiset funktiot, kuten KORVAA, puolestaan edellyttävät ainakin yhden argumentin tekstiarvon. Jos käytät väärää tietotyyppiä, funktiot voivat palauttaa odottamattomia tuloksia tai näyttää #ARVO!-virheen.

Jos haluat pikaisesti tarkistaa tietyn funktion syntaksin, tutustu Excelin funktiot (luokittain) -luetteloon.

Älä käytä kaavojen luvuissa dollarimerkkiä ($) tai pilkkua (,) tuhaterottimena, koska dollarimerkeillä osoitetaan suorat viittaukset ja pilkut eivät toimi suomenkielisessä Excelissä. Kirjoita kaavaan arvon $1000 sijaan 1000.

Jos käytät argumenteissa muotoiltuja lukuja, saat odottamattomia laskutuloksia tai #LUKU!-virheen. Jos esimerkiksi haluat määrittää luvun -2134 itseisarvon ja kirjoitat kaavan =ITSEISARVO(-2134) käyttämällä tuhaterottimena pilkkua, Excel näyttää #LUKU!-virheen, koska ITSEISARVO-funktio ei toimi pilkun kanssa.

Huomautus: Voit muotoilla kaavan tulosta desimaalierottimilla ja valuutan symboleilla sen jälkeen, kun olet syöttänyt kaavan muotoilemattomilla luvuilla (vakiot). Kaavoihin ei yleensä kannata sijoittaa vakioita, koska niitä voi olla vaikea löytää, jos haluat päivittää myöhemmin. Vakioiden kirjoittamisessa voi lisäksi sattua virheitä. On paljon parempi sijoittaa vakiot soluihin, jolloin ne on helppo löytää ja niihin on helppo tehdä viittauksia.

Kaava ei välttämättä palauta odotettuja tuloksia, jos solun tietotyyppi ei sovellu laskutoimituksiin. Jos esimerkiksi syötät tekstiksi muokattuun soluun kaavan =2+3, Excel ei voi laskea kaavan tietoja. Solussa näkyy vain =2+3. Voit ratkaista ongelman vaihtamalla solun Teksti-tietotyypin Yleinen-tietotyypiksi noudattamalla seuraavia ohjeita:

  1. Valitse solu.

  2. Napsauta Aloitus >-nuolta Lukumuotoilu-kohdan vieressä (tai paina Ctrl + 1), ja napsauta Yleinen.

  3. Aseta solu muokkaustilaan painamalla F2-näppäintä ja hyväksy sitten kaava painamalla Enter-näppäintä.

Luku-tietotyypin mukaiseen soluun syötetty päivämäärä voidaan näyttää numeerisena päivämääräarvona päivämäärän sijaan. Jos haluat näyttää luvun päivämääränä, valitse Lukumuotoilu-valikoimassa Päivämäärä-muoto.

On aika yleistä, että kaavan kertolaskuoperaattorina käytetään x-merkkiä, mutta Excel hyväksyy ainoastaan asteriskin (*) kertolaskuissa. Jos käytät kaavassa vakioita, Excel näyttää virheviestin ja voi korjata kirjoittamasi kaavan korvaamalla x-merkin asteriskilla (*).

Viestiruutu, jossa pyydetään korvaamaan x-merkki *-merkillä kertolaskua varten
Virheviesti käytettäessä vakioiden kanssa x-merkkiä *-merkin sijaan

Jos kuitenkin käytät soluviittauksia, Excel palauttaa #NIMI?-virheen.

#NIMI?-virhe, joka näkyy, kun soluviittauksissa käytetään x-merkkiä *-merkin sijaan kertolaskua varten
#NIMI?-virhe käytettäessä soluviittauksissa x-merkkiä *-merkin sijaan

Jos luot kaavan, jossa on tekstiä, kirjoita teksti lainausmerkkien sisään.

Esimerkiksi kaava ="Tänään on " & TEKSTI(TÄMÄ.PÄIVÄ();"pppp, p.k.") yhdistää "Tänään on " -tekstin TEKSTI- ja TÄMÄ.PÄIVÄ-funktioiden tuloksiin ja palauttaa soluun esimerkiksi tekstin Tänään on maanantai, 30.5..

Kaavassa "Tänään on " on välilyönti ennen loppulainausmerkkiä. Tämän ansiosta sanojen "Tänään on" ja "maanantai, 30.5." välissä on välilyönti. Jos tekstin ympärillä ei ole lainausmerkkejä, kaava voi näyttää #NIMI?-virheen.

Voit käyttää kaavassa sisäkkäisiä funktioita enintään 64 tasolla.

Esimerkiksi kaavassa =JOS(NELIÖJUURI(PII())<2;"Vähemmän kuin kaksi!";"Enemmän kuin kaksi!") on kolme funktiotasoa: PII-funktio sisältyy NELIÖJUURI-funktioon, joka puolestaan sisältyy JOS-funktioon.

Jos kaava viittaa toisen laskentataulukon arvoihin tai soluihin ja taulukon nimessä on jokin aakkosiin kuulumaton merkki, kuten välilyönti, nimi on kirjoitettava puolilainausmerkkeihin (').

Jos esimerkiksi haluat palauttaa arvon työkirjaasi sisältyvän Neljännesvuoden tiedot -laskentataulukon solusta D3, käytä seuraavaa kaavaa: ='Neljännesvuoden tiedot'!D3. Jos laskentataulukon nimen ympärillä ei ole puolilainausmerkkejä, kaava näyttää #NIMI?-virheen.

Voit viitata kaavassasi toisen taulukon arvoihin tai soluihin myös napsauttamalla haluamaasi arvoa tai solua. Tällöin Excel lisää automaattisesti puolilainausmerkit taulukon nimen ympärille.

Jos kaava viittaa toisen työkirjan arvoihin tai soluihin, työkirjan nimi on kirjoitettava hakasulkeisiin ([]) ja sen perään on lisättävä kyseiset arvot tai solut sisältävän taulukon nimi.

Jos esimerkiksi haluat viitata Excelissä avoinna olevan Toisen vuosineljänneksen toiminnot -työkirjan Myynti-taulukon soluihin A1–A8, käytä seuraavaa kaavaa: =[Toisen vuosineljänneksen toiminnot.xlsx]Myynti!A1:A8. Jos työkirjan nimen ympärillä ei ole hakasulkeita, kaava näyttää #VIITTAUS!-virheen.

Jos työkirja ei ole avoinna Excelissä, kirjoita tiedoston täydellinen polku.

Esimerkiksi: =RIVIT('C:\Omat tiedostot\[Toisen vuosineljänneksen toiminnot.xlsx]Myynti'!A1:A8).

Huomautus: Jos täydellisessä polussa on välilyöntejä, polku on kirjoitettava puolilainausmerkkeihin, jotka sijoitetaan polun alkuun ja laskentataulukon nimen jälkeen ennen huutomerkkiä.

Vihje: Saat polun toiseen työkirjaan helpoiten avaamalla toisen työkirjan, kirjoittamalla sitten alkuperäisessä työkirjassa = ja siirtymällä sitten toiseen työkirjaan Alt + sarkain -näppäinyhdistelmällä ja valitsemalla lopuksi haluamasi solun laskentataulukosta. Sulje lopuksi lähdetyökirja. Kaavasi päivitetään automaattisesti niin, että siinä näkyy koko tiedostopolku ja taulukon nimi tarvittavan syntaksin ohella. Voit myös kopioida ja liittää polun ja käyttää sitä aina, kun sitä tarvitset.

Jos solu jaetaan toisella solulla, jossa on arvo nolla tai ei mitään arvoa, tuloksena on #JAKO/0!-virhe.

Voit välttää tämän virheen korjaamalla sen suoraan ja testaamalla, onko olemassa nimittäjä.

=JOS(B1,A1/B1,0)

Tämä tarkoittaa JOS(B1 on olemassa, jaa A1 B1:lle, muussa tapauksessa palauta 0).

Ennen kuin poistat mitään soluihin, alueisiin, määritettyihin nimiin, laskentataulukoihin tai työkirjoihin sisältyviä tietoja, tarkista, ettei niihin ole viitattu kaavoissa. Tarvittaessa voit korvata kaavat niiden tuloksilla, ennen kuin poistat tiedot, joihin kaavoissa on viitattu.

Jos et voi korvata kaavoja tuloksilla, tutustu seuraaviin virheitä ja niiden mahdollisia korjaamistapoja koskeviin ohjeisiin:

  • Jos kaava viittaa soluihin, jotka on poistettu tai korvattu toisilla tiedoilla, ja palauttaa #VIITTAUS!-virheen, valitse solu, jossa #VIITTAUS! -virhe on. Valitse kaavariviltä #VIITTAUS! ja poista se. Kirjoita sitten kaavan alue uudelleen.

  • Jos määritetty nimi puuttuu ja siihen viittaava kaava palauttaa #NIMI?-virheen, määritä uusi nimi, joka viittaa haluamaasi alueeseen, tai muuta kaavaa siten, että se viittaa suoraan solualueeseen (esimerkiksi A2:D8).

  • Jos laskentataulukko puuttuu ja siihen viittaava kaava palauttaa #VIITTAUS!-virheen, virhettä ei voi korjata. Poistettua laskentataulukkoa ei voi palauttaa.

  • Jos työkirja puuttuu, siihen viittaava kaava säilyy muuttumattomana, kunnes päivität kaavan.

    Esimerkiksi, jos kirjoitat kaavan =[Työkirja1.xlsx]Taul1'!A1 eikä sinulla ole enää tiedostoa nimeltä Työkirja1.xlsx, tästä työkirjasta peräisin olevat arvot pysyvät edelleen käytettävissä. Jos kuitenkin muokkaat kyseiseen työkirjaan viittaavaa kaavaa ja tallennat sen, Excel näyttää Päivitä arvot -valintaikkunan ja pyytää lisäämään tiedostonimen. Valitse Peruuta ja korvaa sitten puuttuvaan työkirjaan viittaavat kaavat niiden tuloksilla varmistaaksesi, ettei tietoja katoa.

Joskus solun sisältöä kopioidessasi voit haluta liittää vain arvon, mutta et kaavarivillä näkyvää, tietojen perustana olevaa kaavaa.

Saatat esimerkiksi haluta kopioida kaavan tuloksena saatavan arvon jonkin toisen laskentataulukon soluun. Tai halua ehkä poistaa kaavassa käyttämäsi arvot sen jälkeen, kun olet kopioinut tulosarvon toiseen saman laskentataulukon soluun. Kummastakin tilanteesta seuraa, että kohdesoluun tulee näkyviin soluviittausvirhe (#VIITTAUS!), koska soluihin, jotka sisältävät kaavassa käytetyt arvot, ei voi enää viitata.

Voit välttää tämän virheen liittämällä vain kaavojen tuloksena saatavat arvot kohdesoluihin ja jättämällä kaavan liittämättä.

  1. Valitse laskentataulukossa solut, jotka sisältävät kopioitavat kaavan tulosarvot.

  2. Napsauta Aloitus-välilehden Leikepöytä-ryhmässä Kopioi Painikkeen kuva .

    Excelin valintanauhan kuva

    Pikanäppäin: Paina näppäinyhdistelmää CTRL+C.

  3. Valitse kohdealue vasen yläsolu.

    Vihje: Jos haluat siirtää tai kopioida valinnan eri laskentataulukkoon tai työkirjaan, napsauta toisen laskentataulukon välilehteä tai siirry toiseen työkirjaan ja valitse sitten kohdealueen vasen yläsolu.

  4. Napsauta Aloitus-välilehden Leikepöytä-ryhmässä Liitä Painikkeen kuva , ja napsauta sitten Liitä arvot, , tai paina Alt > E > S > V > Enter Windowsissa tai Vaihtoehto > Komento > V > V > Enter Macissa.

Selvittääksesi, miten monimutkainen tai sisäkkäisiä osia sisältävä kaava laskee lopputuloksen, voit laskea kyseisen kaavan.

  1. Valitse laskettava kaava.

  2. Napsauta Kaavat > Laske kaava.

    Kaava-välilehden Kaavan tarkistaminen -ryhmä

  3. Tarkista alleviivatun viittauksen arvo napsauttamalla Laske. Laskennan tulos näkyy kursivoituna.

    Kaavan laskeminen -valintaikkuna

  4. Jos kaavan alleviivattu osa on viittaus toiseen kaavaan, valitsemalla Suorita rivi voit näyttää toisen kaavan Laskenta-ruudussa. Voit palata takaisin edelliseen soluun ja kaavaan napsauttamalla Suorita toimintosarja loppuun.

    Suorita rivi -painike ei ole käytettävissä, jos viittaus on kaavassa toiseen kertaan tai jos kaava viittaa jonkin toisen työkirjan soluun.

  5. Jatka, kunnes olet laskenut kaavan jokaisen osan.

    Kaavan laskenta -työkalu ei välttämättä kerro, miksi kaavassa on katkenneita linkkejä, mutta se voi auttaa näyttämään niiden paikan. Tämä voi olla erittäin hyödyllinen työkalu suuremmissa kaavoissa, joissa ongelmaa voi olla muutoin hankala löytää.

    Huomautukset: 

    • Joitakin osia JOS- ja VALITSE-funktioista ei lasketa, ja Laskenta-ruutuun saattaa tulla #PUUTTUU!-virhe.

    • Jos viittaus on tyhjä, Laskenta-ruudussa näkyy nolla-arvo (0).

    • Tietyt funktiot lasketaan uudelleen aina, kun laskentataulukkoon tehdään muutoksia. Nämä funktiot, joita ovat esimerkiksi SATUNNAISLUKU, ALUEET, INDEKSI, SIIRTYMÄ, SOLU, EPÄSUORA, RIVIT, SARAKKET, NYT, TÄMÄ PÄIVÄ ja SATUNNAISLUKU.VÄLILTÄ, voivat näyttää Kaavan laskeminen -valintaikkunassa tuloksia, jotka poikkeavat laskentataulukon solussa näkyvistä todellisista tuloksista.

Tarvitsetko lisätietoja?

Voit aina kysyä neuvoa Excel Tech Community -yhteisön asiantuntijalta, saada tukea yhteisön vastauksista tai ehdottaa uutta ominaisuutta tai parannusta Excel User Voice -sivustolla.

Katso myös

Yleiskuva Excel-kaavoista

Kaavoissa esiintyvien virheiden tunnistaminen

Excel-funktiot (aakkosjärjestyksessä)

Excel-funktiot (luokittain)

Kehitä taitojasi
Tutustu koulutusmateriaaliin
Saat uudet ominaisuudet ensimmäisten joukossa
Liity Office Insider -käyttäjiin

Oliko näistä tiedoista hyötyä?

Kiitos palautteesta!

Kiitos palautteestasi! Näyttää siltä, että Office-tukiedustajamme avusta voi olla sinulle hyötyä.

×