Récupérer les données d'une requête dans un formulaire
12 réponses
Eric F
Bonjourn
Depuis un foormulaire, je veux exécuter une requête SQL qui va sélectionner
certaines données d'une table. Je cherche à remplacer les données actuelles
du formulaire par les données renvoyées par la reqûête. J'ai trouvé ceci,
mais j'ai une erreur sur Field : "Erreur de compilation : membre de méthode
ou de données introuvable".
Dim strSql As String
Dim rs As Recordset
strSql = "SELECT * FROM [Comptes effacés] WHERE
(((Comptes_SEL.compte)='" & [Compte] & "'));"
Set rs = MyDataBase.openRecordset(strSql)
client.Text = rs.Field("client")
[Mot de passe].Text = rs.Field("Mot de passe")
serveur .Text = rs.Field("serveur")
Private Sub Btn_récupérer_compte_effacé_Click() On Error GoTo Err_Btn_récupérer_compte_effacé_Click
Dim strSql As String Dim rs As DAO.Recordset Dim MyDataBase As DAO.Database
'strSql = "SELECT * FROM [Comptes effacés] WHERE ((([Comptes effacés].num)=" & Me.champ_récupération_compte_effacé & "));" strSql = "SELECT * FROM [Comptes effacés] WHERE ((([Comptes effacés].num)=5));" 'Set rs = MyDataBase.openRecordset(strSql) 'client.Text = rs.Fields("client") '[Mot de passe].Text = rs.Fields("Mot de passe") 'serveur.Text = rs.Fields("serveur") 'client.Value = rs.Fields("client") '[Mot de passe].Value = rs.Fields("Mot de passe") 'serveur.Value = rs.Fields("serveur")
Set MyDataBase = CurrentDb MsgBox strSql Set rs = MyDataBase.openRecordset(strSql) If Not rs.EOF Then Me.client = rs.Fields("client") Me.[Mot de passe] = rs.Fields("Mot de passe") Me.serveur = rs.Fields("serveur") End If
Il affiche "Type défini par l'utilisateur non défini" sur Dim rs As DAO.Recordset.
Voici le code actuel :
Private Sub Btn_récupérer_compte_effacé_Click()
On Error GoTo Err_Btn_récupérer_compte_effacé_Click
Dim strSql As String
Dim rs As DAO.Recordset
Dim MyDataBase As DAO.Database
'strSql = "SELECT * FROM [Comptes effacés] WHERE ((([Comptes
effacés].num)=" & Me.champ_récupération_compte_effacé & "));"
strSql = "SELECT * FROM [Comptes effacés] WHERE ((([Comptes
effacés].num)=5));"
'Set rs = MyDataBase.openRecordset(strSql)
'client.Text = rs.Fields("client")
'[Mot de passe].Text = rs.Fields("Mot de passe")
'serveur.Text = rs.Fields("serveur")
'client.Value = rs.Fields("client")
'[Mot de passe].Value = rs.Fields("Mot de passe")
'serveur.Value = rs.Fields("serveur")
Set MyDataBase = CurrentDb
MsgBox strSql
Set rs = MyDataBase.openRecordset(strSql)
If Not rs.EOF Then
Me.client = rs.Fields("client")
Me.[Mot de passe] = rs.Fields("Mot de passe")
Me.serveur = rs.Fields("serveur")
End If
Private Sub Btn_récupérer_compte_effacé_Click() On Error GoTo Err_Btn_récupérer_compte_effacé_Click
Dim strSql As String Dim rs As DAO.Recordset Dim MyDataBase As DAO.Database
'strSql = "SELECT * FROM [Comptes effacés] WHERE ((([Comptes effacés].num)=" & Me.champ_récupération_compte_effacé & "));" strSql = "SELECT * FROM [Comptes effacés] WHERE ((([Comptes effacés].num)=5));" 'Set rs = MyDataBase.openRecordset(strSql) 'client.Text = rs.Fields("client") '[Mot de passe].Text = rs.Fields("Mot de passe") 'serveur.Text = rs.Fields("serveur") 'client.Value = rs.Fields("client") '[Mot de passe].Value = rs.Fields("Mot de passe") 'serveur.Value = rs.Fields("serveur")
Set MyDataBase = CurrentDb MsgBox strSql Set rs = MyDataBase.openRecordset(strSql) If Not rs.EOF Then Me.client = rs.Fields("client") Me.[Mot de passe] = rs.Fields("Mot de passe") Me.serveur = rs.Fields("serveur") End If