Virheiden käsittely Power Queryssa

Power Queryssa voi ilmetä kahdenlaisia virheitä:

  • Vaihetason virheet
  • Solutason virheet

Tässä artikkelissa annetaan ehdotuksia yleisimpien virheiden korjaamiseksi kullakin tasolla sekä kuvataan kunkin virheen syy, virhesanoma ja virhetiedot.

Vaihetason virhe

Vaihetason virhe estää kyselyn lataamisen ja näyttää virheosat keltaisessa ruudussa.

Vaihetason virhe.

  • Virheen syy: Ensimmäinen osa ennen kaksoispistettä. Yllä olevassa esimerkissä virheen syy on Expression.Error.
  • Virhesanoma: Osio, joka on suoraan syyn jälkeen. Yllä olevassa esimerkissä virhesanoma on Taulukon saraketta "Sarake", jota ei löytynyt.
  • Virheen tiedot: -osio suoraan Tiedot: -merkkijonon jälkeen. Yllä olevassa esimerkissä virheen tieto on Sarake.

Yleisiä vaihetason virheitä

Kaikissa tapauksissa suosittelemme, että tarkastelet tarkasti virheen syytä, virhesanomaa ja virhetietoja virheen syyn ymmärtämiseksi. Voit valita Siirry virheeseen -painikkeen, jos se on käytettävissä, jolloin näet ensimmäisen vaiheen, jossa virhe ilmeni.

Siirry virhepainikkeeseen.

Lähdettä ei löydy - DataSource.Error

Tämä virhe ilmenee yleensä, kun käyttäjä ei voi käyttää tietolähdettä, käyttäjällä ei ole oikeita tunnistetietoja tietolähteen käyttämiseksi tai lähde on siirretty toiseen paikkaan.

Esimerkki: Sinulla on kysely tekstiruudusta, joka oli asemalla D ja jonka on luonut käyttäjä A. Käyttäjä A jakaa kyselyn käyttäjälle B, jolla ei ole käyttöoikeutta D-asemaan. Kun tämä henkilö yrittää suorittaa kyselyn, hän saa DataSource.Error-virheen , koska hänen ympäristössään ei ole D-asemaa.

Tietolähdevirhe, tiedostoa ei löydy, koska nykyisessä ympäristössä ei ole D-asemaa.

Mahdolliset ratkaisut: Voit muuttaa tekstitiedoston tiedostopolun poluksi, johon molemmilla käyttäjillä on käyttöoikeus. KäyttäjänÄ B voit muuttaa tiedostopolun saman tekstitiedoston paikalliseksi kopioksi. Jos Muokkaa asetuksia -painike on käytettävissä virheruudussa, voit valita sen ja muuttaa tiedostopolkua.

Taulukon saraketta ei löytynyt

Tämä virhe käynnistetään yleensä, kun vaihe viittaa suoraan sarakkeen nimeen, jota ei ole kyselyssä.

Esimerkki: Sinulla on kysely tekstitiedostosta, jossa yksi sarakkeiden nimistä oli Column. Kyselyssäsi on vaihe, jossa kyseinen sarake nimetään uudelleen Päivämäärä-sarakkeeksi. Alkuperäisessä tekstitiedostossa tapahtui kuitenkin muutos, eikä siinä ole enää sarakeotsikkoa, jonka nimi on Sarake, koska se on muutettu manuaalisesti päivämääräksi. Power Query ei löydä Sarake-nimistä sarakeotsikkoa, joten se ei voi nimetä sarakkeita uudelleen. Näet seuraavan kuvan virheen.

Lausekevirhe, taulukon saraketta ei löytynyt, koska sarakkeen nimeä muutettiin manuaalisesti.

Mahdolliset ratkaisut: Tähän on olemassa useita ratkaisuja, mutta ne kaikki riippuvat siitä, mitä haluat tehdä. Tässä esimerkissä, koska oikea Päivämäärä-sarakeotsikko on jo peräisin tekstitiedostosta, voit vain poistaa vaiheen, joka nimeää sarakkeen uudelleen. Tämän ansiosta kyselysi voidaan suorittaa ilman tätä virhettä.

Muita yleisiä vaihetason virheitä

Kun yhdistät tai yhdistät tietoja useiden tietolähteiden välillä, saatat saada Formula.Firewall-virheen , kuten seuraavassa kuvassa esitetyn.

Kaavan palomuuri -virhe, kysely viittaa muihin kyselyihin tai vaiheisiin, joten se ei välttämättä käytä tietolähdettä suoraan.

Tämä virhe voi johtua useista syistä, kuten tietolähteiden välisestä tietosuojatasosta tai tavasta, jolla näitä tietolähteitä yhdistetään tai yhdistetään. Lisätietoja tämän ongelman vianmäärityksestä on kohdassa Tietosuojan palomuuri.

Solutason virhe

Solutason virhe ei estä kyselyn latautumista, mutta näyttää virhearvot solussa virheenä. Kun valitset tyhjän tilan solussa, tietojen esikatselun alla näkyy virheruutu.

Virhesanoman näyttäminen valitsemalla välilyönnit taulukon solussa, joka sisältää virheen.

Muistiinpano

Tietojen profilointityökalujen avulla voit helpommin tunnistaa solutason virheet sarakkeen laatuominaisuuden avulla. Lisätietoja: Tietojen profilointityökalut

Virheiden käsittely solutasolla

Kohdatessaan solutason virheitä Power Query tarjoaa joukon funktioita niiden käsittelemiseen joko poistamalla, korvaamalla tai säilyttämällä virheet.

Seuraavissa osissa annetuissa esimerkeissä käytetään samaa mallikyselyä kuin aloituspisteessä. Tässä kyselyssä sinulla on Sales-sarake, jossa on yksi solu, jonka muuntovirheen aiheuttama virhe on. Solun sisällä oleva arvo oli NA, mutta kun muunsit kyseisen sarakkeen kokonaisluvuksi, Power Query ei voinut muuntaa NA :a luvuksi, joten se näyttää seuraavan virheen.

Näyttää tietomuotovirheen, jota ei voitu muuntaa tietotyyppivirheiksi virheruudussa.

Poista virheet

Jos haluat poistaa rivit, joissa on virheitä Power Queryssa, valitse ensin sarake, joka sisältää virheitä. Valitse Aloitus-välilehden Vähennä rivejä -ryhmästä Poista rivit. Valitse avattavasta valikosta Poista virheet.

Poista virheet -painike Aloitus-välilehdessä.

Tämän toiminnon tulos antaa sinulle etsimäsi taulukon.

Taulukko, joka sisälsi aiemmin viisi riviä, on nyt poistettu virheen sisältänyt rivi, jättäen neljä riviä taulukkoon.

Korvaa virheet

Jos sen sijaan, että poistaisit virheitä sisältäviä rivejä, haluat korvata virheet kiinteällä arvolla, voit tehdä niin myös. Jos haluat korvata virheitä sisältävät rivit, valitse ensin sarake, joka sisältää virheitä. Valitse Muunna-välilehdenMikä tahansa sarake -ryhmästä Korvaa arvot. Valitse avattavasta valikosta Korvaa virheet.

Korvaa Muunna-välilehden Virheet-painike.

Kirjoita Korvaa virheet -valintaikkunaan arvo 10, koska haluat korvata kaikki virheet arvolla 10.

Korvaa virheet -valintaikkuna.

Tämän toiminnon tulos antaa sinulle etsimäsi taulukon.

Taulukossa, jossa kolmas rivi sisälsi virheen Myynti-sarakkeessa, virhe on nyt korvattu arvolla 10.

Säilytä virheet

Power Query voi toimia hyvänä valvontatyökaluna mahdollisten virheitä sisältävien rivien tunnistamiseen, vaikka et korjasi virheitä. Tässä säilytä virheet -kohdasta voi olla hyötyä. Jos haluat säilyttää virheitä sisältävät rivit, valitse ensin sarake, joka sisältää virheitä. Valitse Aloitus-välilehden Vähennä rivejä -ryhmästä Säilytä rivit. Valitse avattavasta valikosta Säilytä virheet.

Säilytä virheet -painike Aloitus-välilehdellä.

Tämän toiminnon tulos antaa sinulle etsimäsi taulukon.

Lopullinen taulukko, joka säilyttää vain rivit, jotka sisältävät virheitä.

Yleiset solutason virheet

Kuten vaihetason virheiden tapauksessa, suosittelemme, että tarkastelet solutasolla annettuja virhesyitä, virhesanomia ja virhetietoja tarkasti, jotta ymmärrät, mikä aiheuttaa virheitä. Seuraavissa osissa käsitellään joitakin Power Queryn yleisimpiä solutason virheitä.

Tietotyypin muuntovirheet

Tämä käynnistyy yleensä, kun taulukon sarakkeen tietotyyppiä muutetaan. Joitakin sarakkeesta löytymiä arvoja ei voi muuntaa halutulle tietotyypille.

Esimerkki: Sinulla on kysely, joka sisältää Sales-nimisen sarakkeen. Tämän sarakkeen yhdessä solussa on solun arvona NA , kun taas muissa on kokonaislukuja arvoina. Päätät muuntaa sarakkeen tietotyypin tekstistä kokonaisluvuksi, mutta solu, jossa on NA-arvo , aiheuttaa virheen.

Tietotyyppiin ei voitu muuntaa virhetietoja.

Mahdolliset ratkaisut: Kun olet tunnistanut rivin virheellä, voit joko muokata tietolähdettä siten, että se vastaa oikeaa arvoa NA:n sijaan, tai voit käyttää Korvaa virhe -toimintoa antaaksesi arvon NA-arvoille, jotka aiheuttavat virheen.

Toimintovirheet

Kun yrität käyttää toimintoa, jota ei tueta, kuten kertomalla tekstiarvo numeerisella arvolla, tapahtuu virhe.

Esimerkki: Haluat luoda kyselylle mukautetun sarakkeen luomalla tekstimerkkijonon, joka sisältää ilmauksen "Kokonaismyynti: " yhdistettynä Sales-sarakkeen arvoon. Virhe ilmenee, koska ketjutustoiminto tukee vain tekstisarakkeita numeeristen sarakkeiden sijaan.

Virheruudun lausekevirhe, koska käyttäjä yritti käyttää And-operaattoria tekstiin ja numeroa Sales-sarakkeesta.

Mahdolliset ratkaisut: Ennen kuin luot tämän mukautetun sarakkeen, muuta Sales-sarakkeen tietotyypiksi teksti.

Taulukko, jossa myyntisarake on muunnettu Number-tietotyypistä Teksti-tietotyypiksi, ja tuloksena syntyvä uusi sarake, joka sisältää molemmat lausekkeet.

Virheinä näytetyt sisäkkäiset arvot

Kun käsittelet tietoja, jotka sisältävät sisäkkäisiä jäsennettyjä arvoja (kuten taulukoita, luetteloita tai tietueita), saatat joskus saada seuraavan virheilmoituksen:

Virhe kaavan palomuurin käynnistämiä sisäkkäisiä arvoja varten.

Expression.Error: We cannot return a value of type {value} in this context

Details: In the past we would have returned a text value of {value}, but we now return this error. Please see https://go.microsoft.com/fwlink/?linkid=2099726 for more information.

Nämä virheet ilmenevät yleensä kahdesta syystä:

  • Kun tietosuojan palomuuri puskuroi tietolähdettä, sisäkkäiset ei-skalaariarvot muunnetaan automaattisesti virheiksi.
  • Kun tietotyypillä Any määritetty sarake sisältää ei-skalaariarvoja, tällaiset arvot ilmoitetaan latauksen aikana virheinä (esimerkiksi Excelin työkirjassa tai Power BI Desktopin tietomallissa).

Mahdolliset ratkaisut:

  • Poista virheen sisältävä sarake tai määritä kyseiselle sarakkeelle muuAny kuin tietotyyppi.
  • Muuta kyseessä olevien tietolähteiden yksityisyystaso sellaiseksi, joka mahdollistaa niiden yhdistämisen ilman puskurointia.
  • Tasoittaa taulukot ennen yhdistämistä poistaaksesi sarakkeet, jotka sisältävät sisäkkäisiä jäsennettyjä arvoja (kuten taulukko, tietue tai luettelo).