Come eseguire una query in Access VBA

March 4

Come eseguire una query in Access VBA


Microsoft Access, parte della suite Microsoft Office, è un programma per la creazione e la gestione dei dati. Visual Basic, Applications Edition (VBA) è un linguaggio di scripting che gli sviluppatori Office utilizzano per eseguire operazioni su tali dati, tra cui le query che richiedono poco o nessun intervento da parte dell'utente. L'esecuzione di query in VBA consente agli sviluppatori di scrivere programmi in grado di produrre i dati dei programmi devono eseguire. Ad esempio, possono scrivere un programma VBA che genera automaticamente un rapporto mensile che mostra i fondi erogati ai dipendenti.

istruzione

1 Aprire un database esistente in Access. Fare clic sull'icona "query" nel menu "Crea" per iniziare una nuova query.

2 Fare doppio clic sulla voce in alto nella finestra di dialogo "Mostra tabella" che appare per specificare la tabella da cui si desidera fare una query.

3 Fare doppio clic sul carattere "*" nella piccola finestra che visualizza i nomi di tutti i campi della tabella si è scelto di interrogare. Questa azione crea una query che recupera i dati provenienti da tutti i campi della tabella in una sola volta. Annotare il nome di uno qualsiasi dei campi della tabella (tranne l'asterisco). La query VBA riporterà i dati per questo campo.

4 Premere il tasto "Ctrl + S" per visualizzare la finestra di dialogo che richiede il nome della query. Tipo "Query1" e poi cliccare su "OK" per salvare la query.

5 Premere il tasto "Alt + F11" per accedere al Visual Basic Integrated Development Environment (IDE) e quindi fare clic sulla voce "Modulo" sotto il menu "Inserisci". Questo produce una nuova finestra del codice in cui è possibile inserire il programma.

6 Digitare o incollare il programma che segue ovunque nella finestra del nuovo modulo di codice. Digitare il testo "YOUR_FIELD_NAME" con il nome del campo che si annotò nel passaggio 3.

Public Sub RunQuery ()

Const cstrQueryName = "Query1"

DBS fiochi come DAO.Database

Dim primo Come DAO.Recordset

Set dbs = CurrentDb

'Recordset aperto su query esistente

Set rst = dbs.OpenRecordset (cstrQueryName)

'Loop attraverso tutti i record

Do While Non rst.EOF

Debug.Print rst![YOUR_FIELD_NAME]

rst.MoveNext

Ciclo continuo

'Chiudere il set di record e il database

rst.Close

dbs.Close

End Sub

La chiamata alla funzione OpenRecordset esegue la query salvata, "Query1". Le istruzioni tra il "fare mentre" le dichiarazioni "loop" Iterate (in altre parole, anello) attraverso ciascuno dei record della tabella si è scelto di interrogare. L'affermazione "Debug.Print" visualizza i dati del record per il campo scelto.

7 Fare clic in qualsiasi punto all'interno della subroutine "RunQuery" hai appena scritto e poi premere il tasto "F5" per eseguire la subroutine. Premere il tasto "Ctrl + G" per visualizzare la finestra "immediata" del IDE (se non è già visibile). La finestra mostrerà tutti i record per il campo si è scelto.