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 07/12/2010, 17h35   #1
Membre régulier
 
Inscription : octobre 2008
Messages : 224
Détails du profil
Informations forums :
Inscription : octobre 2008
Messages : 224
Points : 76
Points : 76
Par défaut Problème de syntaxe avec LIKE?

Rebonjour le forum

J'ai écrit la ligne suivante devrait me permettre de compter le nombre d'enregistrements distincts selon un critère.

Code :
1
2
strSQLNombreEnregistrements = "SELECT DISTINCT qry_PrixGenerale.SKU, qry_PrixGenerale.Description FROM qry_PrixGenerale " _
                            & "WHERE qry_PrixGenerale.SKU LIKE """ & strArticle & "*"";"
StrArticle est défini par la valeur d'une textbox.

Je voudrais ensuite passer cette variable par la fonction suivante.

Code :
1
2
3
4
5
6
7
8
9
 
Function ComptageNombreEnregistrements(strSQLNombreEnregistrements As String) As Long
 
rst.Open strSQLNombreEnregistrements, cnc, adOpenKeyset, adLockBatchOptimistic
rst.MoveLast
ComptageNombreEnregistrements = rst.RecordCount
rst.Close
 
End Function
Et là, j'ai une erreur "Either BOF or EOF is true, or the current record has been deleted". Soit.

Là où je suis perdu, c'est que quand je debug.print strSQLNombreEnregistrements, j'ai par exemple:
Code sql :
SELECT DISTINCT qry_PrixGenerale.SKU, qry_PrixGenerale.Description FROM qry_PrixGenerale WHERE qry_PrixGenerale.SKU LIKE "1621*";

Et quand je copie cette ligne dans le QBE, je n'ai aucun problème...
neiluj26 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/12/2010, 18h23   #2
Rédacteur
 
Avatar de LedZeppII
 
Homme
Maintenance données produits
Inscription : décembre 2005
Messages : 3 939
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Yvelines (Île de France)

Informations professionnelles :
Activité : Maintenance données produits
Secteur : Distribution

Informations forums :
Inscription : décembre 2005
Messages : 3 939
Points : 6 278
Points : 6 278
Bonjour,

ADO ne reconnait pas le caractère générique *.
Il faut utiliser % en lieu et place.

A+
LedZeppII est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/12/2010, 08h46   #3
Membre régulier
 
Inscription : octobre 2008
Messages : 224
Détails du profil
Informations forums :
Inscription : octobre 2008
Messages : 224
Points : 76
Points : 76
Bonjour, et merci. Mon code fonctionne très bien maintenant.

Je dois dire que jamais je n'aurais pensé que ça venait de là.

Merci encore.
neiluj26 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 20h16.


 
 
 
 
Partenaires

Hébergement Web