#REF!-virhe tulee näkyviin, kun kaava viittaa virheelliseen soluun. Näin käy yleensä silloin, kun soluja, joihin kaavat viittaavat, poistetaan tai niiden päälle liitetään.
#VIITTAUS! sarakkeen poistamisesta johtuva virhe
Seuraavassa esimerkissä käytetään kaavaa =SUMMA(B2,C2,D2) sarakkeessa E.
Jos poistaisit sarakkeen B, C tai D, se aiheuttaisi #REF! -virheen. Tässä tapauksessa poistamme sarakkeen C (vuoden 2007 myynti), jolloin kaava on =SUMMA(B2,#REF!,C2). Kun käytät tällaisia tarkkoja soluviittauksia (joissa viittaat jokaiseen soluun erikseen pilkulla erotettuina) ja poistat viitatun rivin tai sarakkeen, Excel ei pysty ratkaisemaan ongelmaa, joten se palauttaa #REF! -virheen. Tämä on suurin syy sille, miksi eksplisiittisten soluviittausten käyttäminen funktioissa ei ole suositeltavaa.
Ratkaisu
- Jos poistat rivejä tai sarakkeita vahingossa, voit palauttaa ne heti valitsemalla pikatyökalurivin Kumoa-painikkeen (tai painamalla näppäinyhdistelmää CTRL+Z).
- Muokkaa kaavaa niin, että se käyttää alueviittausta yksittäisten solujen asemesta: =SUMMA(B2:D2). Nyt voit poistaa minkä tahansa sarakkeen summa-alueelta: Excel muokkaa kaavaa automaattisesti. Voit käyttää myös kaavaa =SUMMA(B2:B5) rivien summan laskemiseksi.
Esimerkki PHAKU-kaavasta, jossa on virheellisiä alueviittauksia
Seuraavassa esimerkissä =PHAKU(A8,A2:D5,5,FALSE) palauttaa #VIITTAUS!-virheen, koska se etsii palautettavaa arvoa 5. -virheen, koska se etsii palautettavaa arvoa sarakkeesta 5, mutta viittausalue on vain neljä saraketta: A:D.
Ratkaisu
Muokkaa aluetta suuremmaksi tai pienennä sarakehaun arvoa viittausalueen kokoiseksi. =PHAKU(A8,A2:E5,5,FALSE) olisi kelvollinen viittausalue, samoin =PHAKU(A8,A2:D5,4,FALSE).
INDEKSI, jossa on virheellinen rivi- tai sarakeviittaus
Tässä esimerkissä kaava =INDEKSI(B2:E5,5,5) palauttaa #REF! -virheen, koska INDEKSI-alue on neljä riviä kertaa neljä saraketta, mutta kaava pyytää palauttamaan viidennen rivin ja viidennen sarakkeen tiedot.
Ratkaisu
Muokkaa rivi- tai sarakeviittauksia siten, että ne ovat INDEKSI-hakualueella. =INDEKSI(B2:E5,4,4) palauttaisi kelvollisen tuloksen.
Viittaaminen suljettuun työkirjaan EPÄSUORA-funktiolla
Seuraavassa esimerkissä EPÄSUORA-funktio yrittää viitata työkirjaan, joka on suljettu, mikä aiheuttaa #REF! -virheen.
Ratkaisu
Avaa viitattu työkirja. Sama virhe tulee näkyviin, jos viittaat suljettuun työkirjaan, jossa on dynaaminen matriisifunktio.
Rakenteellisia viittauksia ei tueta
Rakenteellisia viittauksia taulukkojen ja sarakkeiden nimiin ei tueta linkitetyissä työkirjoissa.
Laskettuja viittauksia ei tueta
Laskettuja viittauksia linkitettyihin työkirjoihin ei tueta.
Virheellinen soluviittausvirhe
Solujen siirtäminen tai poistaminen aiheutti virheellisen soluviittauksen, tai funktio palauttaa viittausvirheen.
OLE-ongelmat
Jos olet käyttänyt OLE-linkkiä, joka palauttaa #REF! -virheen ja käynnistä ohjelma, jota linkki kutsuu.
Huomautus: OLE on tekniikka, jolla voit jakaa tietoja ohjelmien välillä.
DDE-ongelmat
Jos olet käyttänyt DDE (Dynamic Data Exchange) -aihetta, joka palauttaa #REF! -virheen, varmista ensin, että viittaat oikeaan aiheeseen. Jos saat edelleen #REF! -virheen, tarkista Luottamuskeskuksen ulkoisen sisällön asetukset , kuten on kuvattu kohdassa Ulkoisen sisällön estäminen tai salliminen Microsoft 365 -asiakirjoissa.
Huomautus:Dynamic Data Exchange (DDE) on vakiintunut protokolla tietojen vaihtamiseen Microsoft Windows -pohjaisten ohjelmien välillä.
Tarvitsetko lisätietoja?
Voit aina kysyä neuvoa Excel Tech Community -yhteisön asiantuntijalta tai saada tukea yhteisöistä.
Katso myös
Viallisten kaavojen ratkaiseminen
Kaavoissa esiintyvien virheiden etsiminen