Comment accéder aux résultats de la requête VBA
Savoir lire les résultats d'une requête Microsoft Access peut vous aider à rendre votre application Access plus dynamique. Access fait partie de la suite Microsoft Office et est utilisé pour créer des bases de données relationnelles. Visual Basic pour Applications (VBA) peut être utilisé dans Access pour créer des applications Windows et récupérer des données de base de données. Une requête est créée à l'aide d'instructions SQL (Structured Query Language) pour demander des informations à une base de données.
Étape 1
Démarrez Microsoft Office Access 2007 et sélectionnez "Base de données vide", puis cliquez sur "Créer". Cliquez sur "Outils de base de données" et sélectionnez "Visual Basic". Cliquez sur le champ "Insérer" et sélectionnez "Module".
Tapez "Private sub readQueryResults" et appuyez sur "Entrée" pour créer une nouvelle sous-routine.
Étape 2
Tapez ce qui suit pour déclarer les variables que vous utiliserez pour lire les résultats de la requête :
Dim RecordSt As Recordset Dim dBase As Database Dim stringSQL As String Dim rCnt As Integer
Étape 3
Tapez ce qui suit pour créer la table "CityTbl":
stringSQL ="CREATE TABLE CityTbl (City TEXT(25), State TEXT(25));" DoCmd.RunSQL (stringSQL)
Étape 4
Tapez ce qui suit pour ajouter deux nouveaux enregistrements à votre table "CityTbl":
stringSQL ="INSERT INTO CityTbl ([City], [State] ) " stringSQL =stringSQL &"VALUES ('Fort Worth', 'Texas');" DoCmd.SetWarnings Faux DoCmd.RunSQL (stringSQL)
stringSQL ="INSERT INTO CityTbl ([City], [State] ) " stringSQL =stringSQL &"VALUES ('Dallas', 'Texas');" DoCmd.SetWarnings Faux DoCmd.RunSQL (stringSQL)
Étape 5
Tapez ce qui suit pour définir votre requête et ouvrir votre jeu d'enregistrements :
stringSQL ="SELECT CityTbl.* FROM CityTbl;" Set RecordSt =dBase.OpenRecordset(stringSQL)
Étape 6
Tapez ce qui suit pour créer une "boucle For" et afficher les résultats de votre requête dans une boîte de message :
RecordSt.MoveFirst For rCnt =0 To RecordSt.RecordCount MsgBox (RecordSt.Fields("City").Value &", " &RecordSt.Fields("State").Value) RecordSt.MoveNext Next rCnt
Appuyez sur "F5" pour exécuter le sous-programme.