OVH Cloud OVH Cloud

VBA & Select tout simple

4 réponses
Avatar
myname
Bonjour,

je bute sur une question fondamentale.

En VBA Access, comment faire une requête Select ?

DoCmd.RunSQL ne permet de faire que des actions, et j'arrive pas
à utiliser ADODB.RecordSet comme je le fais depuis VB6 par exemple...

Merci !

4 réponses

Avatar
Pampi
Bonjour,

Si j'ai bien compris ta question, voici un exemple d'utilisation :

Dim MaRequete As Recordset

Set MaRequete = CurrentDb.OpenRecordset("SELECT .... ")
If (Not MaRequete.EOF) Then
ton traitement
End If

ou

Do While Not MaRequete.EOF
ton traitement
MaRequete.MoveNext
Loop


MaRequete.Close
Set MaRequete = Nothing

Pampi



Bonjour,

je bute sur une question fondamentale.

En VBA Access, comment faire une requête Select ?

DoCmd.RunSQL ne permet de faire que des actions, et j'arrive pas
à utiliser ADODB.RecordSet comme je le fais depuis VB6 par exemple...

Merci !





Avatar
myname
Bonjour et merci,

oui, c'est cela que je veux faire mais ça ne marche pas chez moi :

Dim rstValeurs As Recordset
Set rstValeurs = CurrentDb.OpenRecordset("SELECT * FROM Valeur")
rstValeurs.Close

plante sur la ligne du milieu en disant "Erreur 13: incompatibilité de type"

"Pampi" a écrit dans le message de
news:
Bonjour,

Si j'ai bien compris ta question, voici un exemple d'utilisation :

Dim MaRequete As Recordset

Set MaRequete = CurrentDb.OpenRecordset("SELECT .... ")
If (Not MaRequete.EOF) Then
ton traitement
End If

ou

Do While Not MaRequete.EOF
ton traitement
MaRequete.MoveNext
Loop


MaRequete.Close
Set MaRequete = Nothing

Pampi



Bonjour,

je bute sur une question fondamentale.

En VBA Access, comment faire une requête Select ?

DoCmd.RunSQL ne permet de faire que des actions, et j'arrive pas
à utiliser ADODB.RecordSet comme je le fais depuis VB6 par exemple...

Merci !







Avatar
Pampi
As-tu vérifié les références (modifie un module puis <Outils> <Références>) ?
Y en a-t-il de manquantes ? Si c'est le cas, décoche-les.
Y a-t-il "Microsoft DAO ..." ? Si ça n'est pas le cas, ajoute-la.

Pampi


Bonjour et merci,

oui, c'est cela que je veux faire mais ça ne marche pas chez moi :

Dim rstValeurs As Recordset
Set rstValeurs = CurrentDb.OpenRecordset("SELECT * FROM Valeur")
rstValeurs.Close

plante sur la ligne du milieu en disant "Erreur 13: incompatibilité de type"

"Pampi" a écrit dans le message de
news:
Bonjour,

Si j'ai bien compris ta question, voici un exemple d'utilisation :

Dim MaRequete As Recordset

Set MaRequete = CurrentDb.OpenRecordset("SELECT .... ")
If (Not MaRequete.EOF) Then
ton traitement
End If

ou

Do While Not MaRequete.EOF
ton traitement
MaRequete.MoveNext
Loop


MaRequete.Close
Set MaRequete = Nothing

Pampi



Bonjour,

je bute sur une question fondamentale.

En VBA Access, comment faire une requête Select ?

DoCmd.RunSQL ne permet de faire que des actions, et j'arrive pas
à utiliser ADODB.RecordSet comme je le fais depuis VB6 par exemple...

Merci !












Avatar
myname
Je viens de rajouter DAO en référence, et surtout de déclarer "Dim
rstValeurs As DAO.RecordSet": ça marche ! Merci !


"Pampi" a écrit dans le message de
news:
As-tu vérifié les références (modifie un module puis <Outils>
<Références>) ?

Y en a-t-il de manquantes ? Si c'est le cas, décoche-les.
Y a-t-il "Microsoft DAO ..." ? Si ça n'est pas le cas, ajoute-la.

Pampi


Bonjour et merci,

oui, c'est cela que je veux faire mais ça ne marche pas chez moi :

Dim rstValeurs As Recordset
Set rstValeurs = CurrentDb.OpenRecordset("SELECT * FROM Valeur")
rstValeurs.Close

plante sur la ligne du milieu en disant "Erreur 13: incompatibilité de
type"



"Pampi" a écrit dans le message de
news:
Bonjour,

Si j'ai bien compris ta question, voici un exemple d'utilisation :

Dim MaRequete As Recordset

Set MaRequete = CurrentDb.OpenRecordset("SELECT .... ")
If (Not MaRequete.EOF) Then
ton traitement
End If

ou

Do While Not MaRequete.EOF
ton traitement
MaRequete.MoveNext
Loop


MaRequete.Close
Set MaRequete = Nothing

Pampi



Bonjour,

je bute sur une question fondamentale.

En VBA Access, comment faire une requête Select ?

DoCmd.RunSQL ne permet de faire que des actions, et j'arrive pas
à utiliser ADODB.RecordSet comme je le fais depuis VB6 par
exemple...





Merci !