Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > VBA Access
VBA Access Le forum pour les questions relatives au code VBA sous Access, et à son environnement de développement VBE.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 23/10/2011, 12h37   #1
Membre habitué
 
Inscription : janvier 2006
Messages : 317
Détails du profil
Informations forums :
Inscription : janvier 2006
Messages : 317
Points : 106
Points : 106
Par défaut Nombre d'enregistrements dans une requête

Bonjour,

J'ai une table index dans laquelle je voudrais compter le nombre d'enregistrements correspondants à une certaine valeur (ANN en l'occurence ) du champ ABR.
Code :
1
2
SQL = "SELECT index.* FROM [Index] WHERE (Index.ABR) = 'ANN'"
nb = DCount("*", SQL)
Ce code bloque sur la ligne 2 : "le moteur ne peut trouver la requête SQL"
Si je remplace SQL par "index", j'ai bien le nombre d'enregistrements de la table index.

Merci de votre aide
Amicalement
AndréPe est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/10/2011, 14h11   #2
Membre Expert
 
Inscription : août 2006
Messages : 1 435
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 1 435
Points : 1 756
Points : 1 756
Bonjour,
Cela s'écrirait plutôt ainsi
Code :
1
2
 
nb = DCount("*", "index","[ABR]=""ANN"" ")
double guillemet avant et après ANN
avec une variable
Code :
1
2
 
nb = DCount("*", "index","[ABR]="" " & v & " "" ")
helas est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/10/2011, 14h48   #3
Membre habitué
 
Inscription : janvier 2006
Messages : 317
Détails du profil
Informations forums :
Inscription : janvier 2006
Messages : 317
Points : 106
Points : 106
Bingo helas !
Merci
C'est biren mieux et plus court comme cela

Amitiés
AndréPe est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/10/2011, 15h37   #4
Membre habitué
 
Inscription : janvier 2006
Messages : 317
Détails du profil
Informations forums :
Inscription : janvier 2006
Messages : 317
Points : 106
Points : 106
J'ai crié victoire trop vite : ça fonctionne bien avec
Code :
nb = DCount("*", "index", "[ABR]="" "ANN"" ")
mais pas avec
Code :
1
2
v="ANN"
nb = DCount("*", "index", "[ABR]="" " & v & " "" ")
où ça donne nb=0.

N'y aurait-il pas un " mal placé ?
Je cherche
A+
AndréPe est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/10/2011, 17h19   #5
Membre actif
 
Avatar de robyseb
 
Homme Sébastien
Développeur indépendant
Inscription : juillet 2011
Messages : 178
Détails du profil
Informations personnelles :
Nom : Homme Sébastien
Localisation : Canada

Informations professionnelles :
Activité : Développeur indépendant

Informations forums :
Inscription : juillet 2011
Messages : 178
Points : 193
Points : 193
Essai comme ca :
Code :
1
2
v="ANN"
nb = DCount("*", "index", "[ABR]='" & v & "'")
__________________
Parfois il faut faire le tour d'une roche 10 fois avant de s'apercevoir quelle est ronde.
  • Si vous trouvé mon post intéressant, n'oubliez pas de voter coté inférieur droit du message. Merci
  • Si votre Post est indiquez le....
robyseb est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 24/10/2011, 16h42   #6
Membre habitué
 
Inscription : janvier 2006
Messages : 317
Détails du profil
Informations forums :
Inscription : janvier 2006
Messages : 317
Points : 106
Points : 106
Effectivement, c'est mieux comme tu l'indiques.
Grand merci
Amicalement
AndréPe est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/10/2011, 17h51   #7
Membre Expert
 
Inscription : août 2006
Messages : 1 435
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 1 435
Points : 1 756
Points : 1 756
Bonsoir,
L'erreur vient des espaces qui avaient été mis pour mettre en évidence les guillemets
Code :
1
2
 
nb = DCount("*", "index","[ABR]="" " & v & " "" ")
sinon sans erreur il faut écrire
Code :
1
2
nb = DCount("*", "index","[ABR]=""" & v & """")
meilleur que les apostrophes notamment lorsque la variable contient un nom comprenant une apostrophe, ce qui n'est pas le cas ici
Code :
1
2
nb = DCount("*", "index","[ABR]='" & v & "'")
helas est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 11h38.


 
 
 
 
Partenaires

Hébergement Web