OVH Cloud OVH Cloud

Requete par vba pour débutant

5 réponses
Avatar
Raphaël Pauliat
Bonsoir,

J'essaye de faire ce code là :


Public Sub Anniversaires()

Dim sql As String

sql = "SELECT [Nom], [Prenom], [Date_naissance] FROM [Clients] WHERE
([Date_naissance]<>'')"

DoCmd.RunSQL sql

End Sub

Mais il me retourne une erreur et je ne sais pas pourquoi... Je suis
débutant en vba access, qqu'un peut m'aider ?

Merci d'avance !

Raph

5 réponses

Avatar
Raymond [mvp]
Bonsoir.

l'erreur est là: ([Date_naissance]<>'')"

tu veux faire quoi ? calculer l'age , limiter à un age précis, plus , moins
?

--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Raphaël Pauliat" a écrit dans le message de news:
4260117b$0$24686$
Bonsoir,

J'essaye de faire ce code là :


Public Sub Anniversaires()

Dim sql As String

sql = "SELECT [Nom], [Prenom], [Date_naissance] FROM [Clients] WHERE
([Date_naissance]<>'')"

DoCmd.RunSQL sql

End Sub

Mais il me retourne une erreur et je ne sais pas pourquoi... Je suis
débutant en vba access, qqu'un peut m'aider ?

Merci d'avance !

Raph



Avatar
Raphaël Pauliat
Non, en fait, je veux juste faire un test de Select pour commencer...

Ben, je comprends pas l'erreur, <>'' --> ce sont des apostrophes alors
que )" --> ce sont des guillemets...

En fait, je veux faire, au lancement de la base, un checking sur un champ
date de naissance, pour savoir si aujourd'hui = anniversaire de quelqu'un...

Mais comme je veux comprendre ce que je fais, j'y vais pas à pas :-)

Merci de ton aide en tous cas,

A+

Raph

"Raymond [mvp]" a écrit dans le message de
news: %230Bu%
Bonsoir.

l'erreur est là: ([Date_naissance]<>'')"

tu veux faire quoi ? calculer l'age , limiter à un age précis, plus ,
moins ?

--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Raphaël Pauliat" a écrit dans le message de news:
4260117b$0$24686$
Bonsoir,

J'essaye de faire ce code là :


Public Sub Anniversaires()

Dim sql As String

sql = "SELECT [Nom], [Prenom], [Date_naissance] FROM [Clients] WHERE
([Date_naissance]<>'')"

DoCmd.RunSQL sql

End Sub

Mais il me retourne une erreur et je ne sais pas pourquoi... Je suis
débutant en vba access, qqu'un peut m'aider ?

Merci d'avance !

Raph







Avatar
Raymond [mvp]
Bonjour.

il faut bien que tu indiques une date pour comparer le jour et le mois.
sql = "SELECT [Nom], [Prenom], [Date_naissance] FROM [Clients]
WHERE format([Date_naissance], "dd/mm") = Format(date(), "dd/mm");"

--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Raphaël Pauliat" a écrit dans le message de news:
426030c2$0$24674$
Non, en fait, je veux juste faire un test de Select pour commencer...

Ben, je comprends pas l'erreur, <>'' --> ce sont des apostrophes alors
que )" --> ce sont des guillemets...

En fait, je veux faire, au lancement de la base, un checking sur un champ
date de naissance, pour savoir si aujourd'hui = anniversaire de
quelqu'un...

Mais comme je veux comprendre ce que je fais, j'y vais pas à pas :-)

Merci de ton aide en tous cas,

A+

Raph


Avatar
Raphaël Pauliat
Bonjour,

Merci pour ce code ! Mais j'ai encore un soucis : lorsque je le tape dans
access, il me met un message d'erreur 2342 :

"Une action ExecuterSQL nécéssite un argument consistant en une instruction
SQL"

Et j'ai beau essayer de changer des choses, rien n'y fait... Une idée ?

Merci encore et bonne soirée,

Raph

"Raymond [mvp]" a écrit dans le message de
news:
Bonjour.

il faut bien que tu indiques une date pour comparer le jour et le mois.
sql = "SELECT [Nom], [Prenom], [Date_naissance] FROM [Clients]
WHERE format([Date_naissance], "dd/mm") = Format(date(), "dd/mm");"

--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Raphaël Pauliat" a écrit dans le message de news:
426030c2$0$24674$
Non, en fait, je veux juste faire un test de Select pour commencer...

Ben, je comprends pas l'erreur, <>'' --> ce sont des apostrophes alors
que )" --> ce sont des guillemets...

En fait, je veux faire, au lancement de la base, un checking sur un champ
date de naissance, pour savoir si aujourd'hui = anniversaire de
quelqu'un...

Mais comme je veux comprendre ce que je fais, j'y vais pas à pas :-)

Merci de ton aide en tous cas,

A+

Raph







Avatar
Raymond [mvp]
Bonsoir.

tu peux faire ceci:
Dim Qry As DAO.QueryDef
Dim Rs As DAO.Recordset
Set Qry = CurrentDb.CreateQueryDef("Requêtex")
Qry.sql = "SELECT [Nom], [Prenom], [Date_naissance] FROM [Clients] WHERE
format([Date_naissance], ""dd/mm"") = Format(date(), ""dd/mm"");"
Set Rs = Qry.OpenRecordset
While Not Rs.EOF
MsgBox Rs(0)
Rs.MoveNext
Wend
Set Qry = Nothing
Set Rs = Nothing

--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Raphaël Pauliat" a écrit dans le message de news:
4262cd37$0$1298$
Bonjour,

Merci pour ce code ! Mais j'ai encore un soucis : lorsque je le tape dans
access, il me met un message d'erreur 2342 :

"Une action ExecuterSQL nécéssite un argument consistant en une
instruction
SQL"

Et j'ai beau essayer de changer des choses, rien n'y fait... Une idée ?

Merci encore et bonne soirée,

Raph