Kako dostopati do rezultatov poizvedbe VBA
Če veste, kako prebrati rezultate poizvedbe Microsoft Access, lahko naredite svojo Accessovo aplikacijo bolj dinamično. Access je del zbirke Microsoft Office in se uporablja za ustvarjanje relacijskih baz podatkov. Visual Basic for Applications (VBA) lahko uporabite v Accessu za ustvarjanje aplikacij Windows in pridobivanje podatkov baze podatkov. Poizvedba je zgrajena z uporabo stavkov Structured Query Language (SQL) za zahtevanje informacij iz baze podatkov.
1. korak
Zaženite Microsoft Office Access 2007 in izberite »Prazna zbirka podatkov«, nato kliknite »Ustvari«. Kliknite »Orodja za zbirke podatkov« in izberite »Visual Basic«. Kliknite polje "Vstavi" in izberite "Modul".
Vnesite "Private sub readQueryResults" in pritisnite "Enter", da ustvarite nov podprogram.
2. korak
Vnesite naslednje, da deklarirate spremenljivke, ki jih boste uporabili za branje rezultatov poizvedbe:
Dim RecordSt As Recordset Dim dBase As Database Dim stringSQL As String Dim rCnt As Integer
3. korak
Vnesite naslednje, da ustvarite tabelo »CityTbl«:
stringSQL ="CREATE TABLE CityTbl (Besedilo mesta(25), Besedilo države(25));" DoCmd.RunSQL (stringSQL)
4. korak
Vnesite naslednje, da dodate dva nova zapisa v tabelo »CityTbl«:
stringSQL ="INSERT INTO CityTbl ([City], [State] ) " stringSQL =stringSQL &"VALUES ('Fort Worth', 'Texas');" DoCmd.SetWarnings False DoCmd.RunSQL (stringSQL)
stringSQL ="INSERT INTO CityTbl ([City], [State] ) " stringSQL =stringSQL &"VALUES ('Dallas', 'Texas');" DoCmd.SetWarnings False DoCmd.RunSQL (stringSQL)
5. korak
Vnesite naslednje, da definirate svojo poizvedbo in odprete nabor zapisov:
stringSQL ="SELECT CityTbl.* FROM CityTbl;" Nastavite RecordSt =dBase.OpenRecordset(stringSQL)
6. korak
Vnesite naslednje, da ustvarite "zanko za" in prikažete rezultate poizvedbe v sporočilnem polju:
RecordSt.MoveFirst For rCnt =0 Za RecordSt.RecordCount MsgBox (RecordSt.Fields("City").Value &", " &RecordSt.Fields("State").Value) RecordSt.MoveNext Next rCnt
Pritisnite "F5", da izvedete podprogram.