Requête de type SELECT...WHERE avec vba

sdzhr Messages postés 2 Date d'inscription jeudi 6 août 2009 Statut Membre Dernière intervention 10 août 2009 - 6 août 2009 à 11:35
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 - 6 août 2009 à 13:54
Salut;

comment cree une requête de type SELECT...WHERE avec vba pour chercher des évènements dans un tableau à un intervale de temps ( deux date: date de début et date de fin).
req: je fait cette syntaxe mais ne donne rien:
bd.open "select * from Maintenance where DateMaintenance > #" & x & #" And DateMaintenance < #" & y & "#", cn, 1, 2
tel que x et y son déclarer comme suit:
Dim x, y As Date
x = D1.Value
y = D2.Value.

et DateMaintenance est de type Date/time.

Mercis de donner une solution pour ce problème.

mercis beaucoup.

4 réponses

nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
6 août 2009 à 13:26
Salut,

Regardes avec un debug.print le contenu de ta requete
et lance la directement dans access.

NB: il y a peut etre l'operateur between (je sais pas si il existe en access) qui peut aider.
0
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
6 août 2009 à 13:41
Et tu vas créer un compte sur Codes-Sources à chaque fois que tu as besoin de poser une question ?
Pitié, non
Prends la peine de mémoriser tes identifiants

Surtout pour reposer toujours les mêmes questions ...
http://www.vbfrance.com/forum/sujet-DEPLACE-VB6-GT-VBA-REQUETE-TYPE-SELECT-WHERE_1345633.aspx

De plus, si tu es sous Excel, le VB utilisé est du VBA, pas du VB6.
0
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
6 août 2009 à 13:46
Dim x, y As Date
ne signifie pas que chaque variable sera dimensionnée en Date
Il faut répéter le type pour chacune d'elle :
Dim x As Date, y As Date

Oui, Between est un mot clé SQL supporté par toutes les connexions aux DB

sdzh :
Ta syntaxe est correcte
Dis nous plutôt ce que veut dire "ça ne donne rien"
As-tu une erreur ?
Que sont les objets "db" et "cn" (dimensionnés comment ?)

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
0
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
6 août 2009 à 13:54
+ Comme te l'a dit Calade lors de ton dernier échange, les paramètres de fin de ligne de db.Open représentent des paramètres importants.
Il faut utiliser les constantes et pas les chiffres.
Dans ton cas, tu as utilisé 1 et 2 :
CursorType :
1 = adOpenKeyset
LockType :
2 = adLockPessimistic
A toi de voir dans l'aide ce que signifient ces paramètres par rapport à ton usage.
Le standard est : db.Open "Select ...", cn, adOpenStatic, adLockOptimistic
en supposant que "db" est un RecordSet et que "cn" est ta connexion

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
0
Rejoignez-nous