Funktsioon DLookup

Accessi töölaua andmebaasides saate kasutada funktsiooni DLookup täpsustatud kirjete (domeeni) kindlast väljast väärtuse saamiseks. Kasutage funktsiooni DLookup Visual Basic for Application (VBA) moodulis, makros, päringuavaldises või vormil või aruandel olevas arvutatud juhtelemendis.

Märkus. : See artikkel ei kehti Accessi veebirakenduste kohta.

Saate kasutada funktsiooni DLookup selle välja väärtuse kuvamiseks, mida pole teie vormi või aruande kirje allikas. Näiteks oletame, et teil on vorm, mis põhineb tabelil Tellimuse üksikasjad. Vormil kuvatakse väljad Tellimuse ID, Toote ID, Ühikuhind, Hulk ja Soodustus. Siiski on väli TooteNimi muus tabelis, täpsemalt tabelis Tooted. Saate kasutada funktsiooni DLookup arvutatud juhtelemendis välja TooteNimi kuvamiseks samas vormis.

Süntaks

DLookup( avaldis, domeen [, kriteeriumid] )

Funktsiooni Dlookup süntaksil on järgmised argumendid.

Argument

Kirjeldus

avaldis

Nõutav. Avaldis, mis tuvastab välju, mille väärtusi soovite tagastada. Stringavaldis võib tabelivälja või päringu tuvastada. Selleks võib olla ka avaldis, mis arvutab selle välja andmeid. Avaldisse saate lisada tabelis oleva välja nime, vormis oleva juhtelemendi, konstandi või funktsiooni. Kui avaldis sisaldab funktsiooni, siis saab see olla kas sisseehitatud või kasutajamääratletud, mitte mõne muu domeeni liitväärtus või SQL-i liitväärtuse funktsioon.

domeen

Nõutav. Stringavaldis, mis tuvastab domeeni moodustavat kirjete kogumi. See võib olla tabeli nimi või päringu nimi, mis kuulub parameetreid mitte vajavale päringule.

kriteeriumid

Valikuline. Stringiavaldist kasutatakse andmevahemiku piiramiseks, mille peal kasutatakse funktsiooni DLookup. Näiteks SQL-i avaldises on kriteeriumid tihti võrdväärsed WHERE-klausliga, ilma sõnata WHERE. Kui kriteeriumid on välja jäetud, hindab funktsioon DLookupavaldist kogu domeeni vastu. Iga väli, mis on kriteeriumite alla lisatud, peab olema ka domeeni väli; vastasel juhul tagastab funktsioon DLookup vastuseks Nulli.

Kommentaarid

Funktsioon DLookup tagastab ühe välja väärtuse põhinedes kriteeriumites täpsustatud teabel. Kuigi kriteeriumid on valikuline argument, tagastab funktsioon DLookupkriteeriumite väärtuse puudumisel domeeni suvalise väärtuse.

Kui ükski kirje ei vasta kriteeriumi või domeen ei sisalda kirjeid, tuleb funktsiooni DLookup vastuseks Null.

Kui kriteeriumitele vastab rohkem kui üks väli, tagastab DLookup esimese esinemiskorra. Peaksite kriteeriume täpsustama, et veenduda funktsiooni DLookup poolt tagastatava väljaväärtuse kordumatuses. Võiksite oma kriteeriumite jaoks kasutada primaarvõtme väärtust (nt [EmployeeID] järgmises näites), et tagada funktsiooni DLookup poolt kordumatu väärtuse tagastamine.

Dim varX As Variant
varX = DLookup("[LastName]", "Employees", _
"[EmployeeID] = 1")

Hoolimata sellest, kas kasutate funktsiooni DLookup makros, moodulis, päringuavaldises või arvutatud juhtelemendis, peate moodustama kriteeriumite argumendi hoolikalt, et veenduda hinnangu korrektsuses.

Saate kasutada funktsiooni DLookup kriteeriumite täpsustamiseks päringu reas Kriteeriumid, päringus arvutatud välja avaldises, või värskenduspäringu reas Värskenda.

Saate kasutada ka funktsiooni DLookup vormi või aruande arvutatud juhtelemendi avaldises, kui väli, mida peate kuvama, ei ole kirje allikas, millele teie vorm või aruanne põhineb. Näiteks oletame, et teil vorm Tellimuse üksikasjad, mis põhineb tabelil Tellimuse üksikasjad, ja sisaldab tekstivälja Toote ID, milles kuvatakse väli Toote ID. Selleks, et otsida TooteNimi tabelist Tooted põhinedes tekstiväljal oleval väärtusel, võiksite luua uue tekstivälja ja seada selle atribuut ControlSource järgmiseks avaldiseks:

=DLookup("[ProductName]", "Products", "[ProductID] =" & Forms![Order Details]!ProductID)

Näpunäited

  • Kuigi saate kasutada funktsiooni DLookup välistabeli väljas oleva väärtuse kuvamiseks, võib tõhusam olla sellise päringu loomine, mis sisaldab välju, mida vajate mõlema tabeli jaoks ja siis luua oma vorm või aruanne selle päringu põhjal.

  • Väärtuste otsimiseks välistabelist saate kasutada ka Otsinguviisardit.

Märkus. : Domeenide kirjete salvestamata muudatusi ei lisata, kui kasutate seda funktsiooni. Kui soovite, et funktsioon DLookup põhineks muudetud väärtustel, peate esmalt muudatused salvestama klõpsates menüü Andmed jaotises Kirjed nuppu Salvesta kirje; viies tähelepanu muule kirjele või kasutades meetodit Värskendamine.

Näide

Märkus. : Järgmised näited kujutavad selle funktsiooni kasutamist rakenduse Visual Basic for Applications (VBA) moodulis. Lisateabe saamiseks VBA-ga töötamise kohta valige välja Otsing kõrval kuvatavast ripploendist väärtus Tootearendusmaterjal ja sisestage otsinguväljale üks või mitu sõna.

Järgmises näites tagastatakse kirje väljalt EttevõtteNimi nime teave vastavalt kriteeriumitele. Domeen on tabel Ekspediitorid. Kriteeriumi argument piirab kirjete kogumit nende hulgas, kus väärtus Tarnija ID võrdub väärtusega 1.

Dim varX As Variant
varX = DLookup("[CompanyName]", _
"Shippers", "[ShipperID] = 1")

Järgmises näites kasutatakse tabelis Tarnijad vormi juhtelemendi Tarnija ID-d funktsioonile DLookup kriteeriumite määramiseks. Pange tähele, et juhtelemendi viide ei ole jutumärkides, mis stringe tähistaks. See tagab, et iga kord, kui funktsioon DLookup käivitatakse, saab Access juhtelemendilt praeguse väärtuse.

Dim varX As Variant
varX = DLookup("[CompanyName]", "Shippers", _
"[ShipperID] = " & Forms!Shippers!ShipperID)

Järgmises näites kasutatakse väärtuse saamiseks muutujat intSearch.

Dim intSearch As Integer
Dim varX As Variant
intSearch = 1
varX = DLookup("[CompanyName]", "Shippers", _
"[ShipperID] = " & intSearch)
Täiendage oma oskusi
Tutvuge koolitusmaterjalidega
Kasutage uusi funktsioone enne teisi
Liituge Office Insideri programmiga

Kas sellest teabest oli abi?

Täname tagasiside eest!

Täname tagasiside eest! Tundub, et võiksime teid kokku viia ühega meie Office'i tugiagentidest, kes aitab teil probleemi lahendada.

×