Come accedere ai risultati delle query VBA

...

Recupera i risultati della query in Access utilizzando VBA.

Sapere come leggere i risultati di una query di Microsoft Access può aiutarti a rendere la tua applicazione di Access più dinamica. Access fa parte della suite Microsoft Office ed è utilizzato per creare database relazionali. Visual Basic for Applications (VBA) può essere utilizzato in Access per creare applicazioni Windows e recuperare dati di database. Una query viene creata utilizzando istruzioni SQL (Structured Query Language) per richiedere informazioni da un database.

Passo 1

Avvia Microsoft Office Access 2007 e seleziona "Database vuoto", quindi fai clic su "Crea". Fare clic su "Strumenti database" e selezionare "Visual Basic". Fare clic sul campo "Inserisci" e selezionare "Modulo".

Video del giorno

Digitare "Private sub readQueryResults" e premere "Invio" per creare una nuova subroutine.

Passo 2

Digita quanto segue per dichiarare le variabili che utilizzerai per leggere i risultati della query:

Dim RecordSt As Recordset Dim dBase As Database Dim stringSQL As String Dim rCnt As Integer

Passaggio 3

Digita quanto segue per creare la tabella "CityTbl":

stringSQL = "CREATE TABLE CityTbl (City TEXT(25), State TEXT(25));" DoCmd. EseguiSQL (stringSQL)

Passaggio 4

Digita quanto segue per aggiungere due nuovi record alla tabella "CityTbl":

stringSQL = "INSERT INTO CityTbl ([City], [State] ) " stringSQL = stringSQL & "VALUES ('Fort Worth', 'Texas');" DoCmd. SetWarnings False DoCmd. EseguiSQL (stringSQL)

stringSQL = "INSERT INTO CityTbl ([City], [State] ) " stringSQL = stringSQL & "VALUES ('Dallas', 'Texas');" DoCmd. SetWarnings False DoCmd. EseguiSQL (stringSQL)

Passaggio 5

Digita quanto segue per definire la tua query e aprire il tuo Recordset:

stringSQL = "SELECT CityTbl.* FROM CityTbl;" Imposta RecordSt = dBase. OpenRecordset (stringSQL)

Passaggio 6

Digitare quanto segue per creare un "Ciclo For" e visualizzare i risultati della query tramite una finestra di messaggio:

RecordSt. MoveFirst For rCnt = 0 To RecordSt. RecordCount MsgBox (Campi St.Record("Città").Valore & ", " & Campi St.Record("Stato").Valore) St.Record. MoveNext Next rCnt

Premere "F5" per eseguire la subroutine.