SQL.REQUEST (SQL.REQUEST-funktio)

Tärkeää: Tämä on artikkeli on käännetty koneellisesti. Lue vastuuvapauslauseke. Tämän artikkelin englanninkielinen versio on täällä .

Tässä artikkelissa kuvataan Microsoft Excelin SQL.REQUEST-funktion kaavasyntaksi ja käyttö.

Tärkeää: 

  • Excel 2010:ssä ja uudemmissa on haku- ja muuntotoiminto (Power Query), joka tarjoaa lisätoimintoja tietojen tuomiseen ulkoisista tietolähteistä ja korvaa tehokkaasti SQL.REQUEST-funktion.

  • SQL.REQUEST-funktiota ei tueta Microsoft Excel 2007:ssä ja sitä vanhemmissa versioissa.

  • Osa tämän ohjeen sisällöstä ei ehkä koske kaikkia kieliä.

Kuvaus

SQL.REQUEST-funktio muodostaa yhteyden ulkoiseen tietolähteeseen ja suorittaa laskentataulukkoon liittyvän kyselyn. Sen jälkeen se palauttaa tulokset matriisina ilman makrojen ohjelmointia. Jos tämä funktio ei ole käytettävissä, asenna Microsoft Excel ODBC -apuohjelma (XLODBC.XLA).

Syntaksi

SQL.REQUEST(yhteyskoodi;[tulostus_viittaus];[ohjain_kehote];[kysely_teksti];[sar_nimet_totuus])

SQL.REQUEST-funktion syntaksissa on seuraavat argumentit:

  • Yhteyskoodi:     Pakollinen. Tiedot, joita ohjain tarvitsee muodostaessaan yhteyden tietolähteeseen. Yhteyskoodi-argumentissa voi olla esimerkiksi tietolähteen nimi, käyttäjätunnus ja salasanat. Sen on vastattava ohjaimen muotoa. Seuraavassa taulukossa on esimerkki kolmen ohjaimen yhteyskoodista:

Ohjain:

Yhteyskoodi:

dBASE

DSN=NWind;PWD=testi

SQL Server

DSN=OmaPalvelin;UID=maalto;PWD=123;Database=Pubs

ORACLE

DNS=Oma Oracle Tietolähde;DBQ=OMAPALVELIN;UID=MattiA;PWD=Sesam

  • Käytettävä tietolähteen nimi on määritettävä yhteyskoodi-argumenttiin, ennen kuin yrität muodostaa yhteyden.

  • Voit kirjoittaa yhteyskoodi-argumentin matriisina tai merkkijonona. Jos argumentissa on yli 250 merkkiä, se on kirjoitettava matriisina.

  • Ellei SQL.REQUEST saa yhteyttä tietolähteeseen yhteyskoodi-argumentin tietojen perusteella, se palauttaa virhearvon #PUUTTUU!.

  • Tulostus_viittaus     Valinnainen. Viittaus soluun, johon haluat sijoittaa täydennetyn yhteyskoodi-argumentin. Jos kirjoitat SQL.REQUEST-funktion taulukkoon, tulostus_viittaus-argumentti ohitetaan.

    • Käytä tätä argumenttia, kun haluat SQL.REQUEST-funktion palauttavan täydennetyn yhteyskoodin (kirjoita tässä tapauksessa SQL.REQUEST-funktio makrolomakkeeseen).

    • Jos jätät pois tulostus_viittaus-argumentin, SQL.REQUEST-funktio ei palauta täydennettyä yhteyskoodia.

  • Ohjainkehote:     Valinnainen. Määrittää, milloin ohjaimen valintaikkuna tulee näyttöön ja mitkä vaihtoehdot ovat saatavilla. Käytä yhtä seuraavassa taulukossa kuvattua lukua. Jos ohjain_kehote-argumentti jätetään pois, SQL.REQUEST-funktio käyttää oletusarvona lukua 2.

Ohjainkehote:

Kuvaus

1

Ohjaimen valintaikkuna on aina näytössä.

2

Ohjaimen valintaikkuna tulee näyttöön vain, jos yhteyskoodin ja tietolähdemäärityksen antamat tiedot eivät riitä yhteyden muodostamiseen. Kaikki valintaikkunan vaihtoehdot ovat käytettävissä.

3

Ohjaimen valintaikkuna tulee näyttöön vain, jos yhteyskoodin ja tietolähdemäärityksen antamat tiedot eivät riitä yhteyden muodostamiseen. Valintaikkunan valinnaiset vaihtoehdot näkyvät himmennettyinä, eivätkä ne ole käytettävissä.

4

Valintaikkuna ei tule näyttöön. Ellei yhteyttä voi muodostaa, funktio palauttaa virhearvon.

  • Kysely_teksti     Valinnainen. SQL-lause, jonka haluat suorittaa tietolähteessä.

    • Ellei SQL.REQUEST-funktio pysty suorittamaan Kysely_teksti-lauseketta määrittämässäsi tietolähteessä, se palauttaa virhearvon #PUUTTUU!.

    • Voit päivittää kyselyä ketjuttamalla viittauksia kysely_teksti-argumenttiin. Seuraavassa esimerkissä SQL.REQUEST-funktio käyttää uutta arvoa kyselyn päivittämiseen aina, kun $A$3 muuttuu.

”SELECT Nimi FROM Asiakkaat missä Saldo >” & $A$ 3 & ””.

Microsoft Excel rajoittaa merkkijonojen pituuden 255 merkkiin. Jos kysely_teksti-argumentti ylittää sen, kirjoita kysely pystysuoraan solualueeseen ja käytä koko aluetta kysely_teksti-argumenttina. Solujen arvot ketjuttuvat muodostamaan täydellisen SQL-lausekkeen.

  • Sar_nimet_totuus     Valinnainen. Ilmaisee, palautetaanko sarakenimet tulosten ensimmäisenä rivinä. Määritä tämän argumentin arvoksi TOSI, jos haluat, että sarakenimet palautetaan tulosten ensimmäisenä rivinä. Käytä arvoa EPÄTOSI, jos et halua, että sarakenimet palautetaan. Jos argumentti jätetään pois, SQL.REQUEST-funktio ei palauta sarakenimiä.

Palautusarvo

  • Jos funktio toteuttaa kaikki siihen liittyvät toimet, se palauttaa matriisin kyselyn tuloksista tai riveistä, joihin kysely on vaikuttanut.

  • Ellei SQL.REQUEST-funktio saa yhteyttä tietolähteeseen yhteyskoodi-argumentin tietojen perusteella, se palauttaa virhearvon #PUUTTUU!.

Huomautuksia

  • SQL.REQUEST-funktio voidaan antaa matriisina, jolloin funktio palauttaa kyseisen alueen muotoisen matriisin.

  • Jos antamasi solualue on suurempi kuin tulosjoukko, SQL.REQUEST-funktio laajentaa palautettavaa matriisia lisäämällä siihen tyhjiä soluja.

  • Jos tulosjoukko on suurempi kuin antamasi matriisi, SQL.REQUEST-funktio palauttaa koko matriisin.

  • SQL.REQUEST-funktion argumentit ovat eri järjestyksessä kuin Visual Basic for Applicationsin SQLRequest-funktion argumentit.

Esimerkki

Oletetaan, että haluat tehdä kyselyn dBase-tietokannasta nimeltä DBASE4. Kun kirjoitat seuraavan kaavan johonkin soluun, funktio palauttaa kyselyn tulokset matriisina, jonka ensimmäisellä rivillä on sarakkeiden nimet.

SQL. PYYDÄ (”DSN = NWind; DBQ = c:\msquery; FIL = dBASE4”, c15, 2 ”, valitse Custmr_ID, Due_Date tilauksista WHERE order_Amt > 100”, TOSI)

Huomautus: Konekäännöksestä ilmoittava vastuusvapauslauseke: Tämä artikkeli on käännetty tietokonejärjestelmällä, eikä kieliasiantuntija ole muokannut sitä. Microsoft tarjoaa nämä konekäännökset avuksi muille kuin englantia puhuville käyttäjille, jotta he saavat lisätietoja Microsoftin tuotteista, palveluista ja tekniikoista. Koska artikkeli on koneellisesti käännetty, se saattaa sisältää sanasto-, lauseoppi- ja kielioppivirheitä.

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ä.

×