Získať výsledky dotazu v Accesse pomocou VBA.
Vedieť, ako čítať výsledky z dotazu programu Microsoft Access, vám môže pomôcť zvýšiť dynamiku vašej aplikácie Access. Access je súčasťou balíka Microsoft Office a používa sa na vytváranie relačných databáz. Visual Basic for Applications (VBA) možno použiť v Accesse na vytváranie aplikácií pre Windows a získavanie údajov z databázy. Dotaz je vytvorený pomocou príkazov SQL (Structured Query Language) na vyžiadanie informácií z databázy.
Krok 1
Spustite Microsoft Office Access 2007 a vyberte „Prázdna databáza“ a potom kliknite na „Vytvoriť“. Kliknite na „Nástroje databázy“ a vyberte „Visual Basic“. Kliknite na pole „Vložiť“ a vyberte „Modul“.
Video dňa
Napíšte "Private sub readQueryResults" a stlačte "Enter" na vytvorenie nového podprogramu.
Krok 2
Zadajte nasledovné na deklarovanie premenných, ktoré použijete na čítanie výsledkov dotazu:
Dim RecordSt As Recordset Dim dBase As Database Dim stringSQL as String Dim rCnt As Integer
Krok 3
Ak chcete vytvoriť tabuľku „CityTbl“, zadajte nasledovné:
stringSQL = "CREATE TABLE CityTbl (Mesto TEXT(25), Stav TEXT(25));" DoCmd. RunSQL (stringSQL)
Krok 4
Ak chcete do tabuľky „CityTbl“ pridať dva nové záznamy, zadajte nasledujúce:
stringSQL = "INSERT INTO CityTbl ([Mesto], [Štát] ) " stringSQL = stringSQL & "VALUES ('Fort Worth', 'Texas');" DoCmd. SetWarnings False DoCmd. RunSQL (stringSQL)
stringSQL = "INSERT INTO CityTbl ([Mesto], [Štát] ) " stringSQL = stringSQL & "VALUES ('Dallas', 'Texas');" DoCmd. SetWarnings False DoCmd. RunSQL (stringSQL)
Krok 5
Zadajte nasledujúce, aby ste definovali svoj dotaz a otvorili svoju sadu záznamov:
stringSQL = "SELECT CityTbl.* FROM CityTbl;" Nastavte RecordSt = dBase. OpenRecordset (stringSQL)
Krok 6
Zadajte nasledujúci text, aby ste vytvorili „Pre slučku“ a zobrazili výsledky dotazu prostredníctvom okna so správou:
RecordSt. MoveFirst For rCnt = 0 To RecordSt. RecordCount MsgBox (RecordSt. Fields("City")).Value & ", " & RecordSt. Fields("State").Value) RecordSt. MoveNext Ďalší rCnt
Stlačením "F5" spustíte podprogram.