February 24
La possibilità di eseguire query da database diversi da quello che si sta utilizzando può rendere l'applicazione di accesso più dinamico; è possibile eseguire questa utilizzando Visual Basic, Applications Edition (VBA). In VBA, è possibile utilizzare il metodo "OpenDatabase" per definire il percorso e il nome del database che si desidera interrogare. Dopo aver definito il database, è possibile utilizzare l'oggetto "Recordset" per visualizzare i risultati della query.
1 Avviare Access 2007, fare clic su "Database vuoto" e quindi fare clic sul pulsante "Crea". Selezionare "Strumenti database" e poi cliccare su "Visual Basic".
2 Creare una nuova procedura digitando il seguente codice:
Private Sub QueryDataBase ()
3 Creare tre nuove variabili digitando il seguente codice VBA:
Dim rst come Recordset
DBS fiochi come database
Dim SQLStr As String
4 Definire il database che si interrogherà inserendo il seguente codice:
Set dbs = OpenDatabase ( "C: \ Northwind 2007.accdb")
5 Creare una stringa SQL digitando il seguente codice per creare una query:
SQLStr = "Ordini selezionare. [Nome] Nave, ordini. [Nave indirizzo]"
SQLStr = SQLStr & "FROM Ordini"
SQLStr = SQLStr & "GROUP BY Ordini [Nome Nave], Ordini [Nave Indirizzo],.."
6 Copiare e incollare il seguente codice per aprire la query attraverso un "Recordset" e visualizzare i risultati alla finestra Immediata:
Set rst = dbs.OpenRecordset (SQLStr)
rst.MoveLast
rst.MoveFirst
Do While Non rst.EOF
Debug.Print rst.Fields("Ship Name").Value
Debug.Print rst.Fields ( "Nave Address"). Valore
rst.MoveNext
Ciclo continuo
7 Terminate la procedura digitando il seguente codice:
rst.Close
dbs.Close
End Sub