Récupération de données dans une table access via vba
Bonjour à tous
Je développe actuellement un outil permettant de créer des tables automatiquement en fonction d'autres tables. Pour cela je dois récupérer les valeurs dans chaque table.
Voila le code que 'ai actuellement
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
| Sub update_table(requete As String, table As String, col_Account As String, col_SN As String, col_SR As String, col_Desc_SN As String, col_Env As String, col_Env_exist As Boolean)
Dim dbs As DAO.Database
Dim rsSQL As DAO.Recordset
Dim strSQL As String
Set dbs = CurrentDb
'Open a snapshot-type Recordset based on an SQL statement
strSQL = requete
Set rsSQL = dbs.OpenRecordset(strSQL, dbOpenSnapshot)
'Begin row processing
Do While Not rsSQL.EOF
Account = rsSQL![col_Account]
SN = rsSQL![col_SN]
SystemRole = rsSQL![col_SR]
'choix de la colonne description du sr si cette colonne existe
If col_Desc_SN = "" Then
SystemRoleDescription = "N/A"
Else
SystemRoleDescription = rsSQL![col_Desc_SN]
End If
' choix de l'environnement
If col_Env_exist Then
Environnement = rsSQL![col_Env]
Else
Environnement = col_Env
End If
If Left(Account, 3) = "ACC" Then
Call Ajouter_Utilisateur(dbs, table, Account, SystemRole, SystemRoleDescription, Environnement)
Else
Call Ajouter_Utilisateur_Non_Trouve(dbs, table, Account)
End If
rsSQL.MoveNext
Loop
'Cleanup
rsSQL.Close
End Sub |
Le problème avec ce code est que la valeur des colonnes dans lesquelles je souhaite récupérer les valeurs est variable.
Cette valeur est entrée dans les paramètres de la procédure mais a la ligne Account = rsSQL![col_Account] par exemple j'ai une erreur me disant que l'élément est introuvable dans la collection. Cependant en déboguant je remarque que la valeur de col_Account est la bonne.
Pouvez vous m'aider SVP.
Merci par avance pour votre réponse. ;)