Erreur de syntaxe (opérateur absent) dans l'expression acces
Ferméyg_be Messages postés 22724 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 25 avril 2024 - 30 déc. 2022 à 19:27
- Erreur de syntaxe (opérateur absent) dans l'expression acces
- Erreur 0x80070643 - Guide
- Code erreur f3500-32 ✓ - Forum Bbox Bouygues
- Erreur 10016 epson - Forum Imprimante
- A quel opérateur appartient ce numéro ✓ - Forum Opérateurs & Réseaux mobiles
- Dans la table des matières de ce document, le chapitre 6 et ses 2 sections n'apparaissent pas. trouvez l'erreur dans la structure du document et corrigez-la. mettez à jour la table des matières. quel est le mot formé par les lettres en majuscules de la table des matières après sa mise à jour ? - Forum Word
5 réponses
29 déc. 2022 à 16:59
Salut,
c'est normal, ton délimiteur de chaine est l'apostrophe et dans ton nom, tu as une apostrophe, donc access ne sait pas gérer, il croit que tu cherches Facture N° 1111 / ABBAYE DE L et ensuite il trouve ETOILE' qui ne correspond à aucune syntaxe connue de lui.
Change le délimiteur par un guillemet : "
29 déc. 2022 à 17:29
Et si tu ne changes les ' par des " que pour la condition [ec_intitule] ?
Parce que je me méfie des données qui semblent être numériques mais qu'on va tester comme des chaines (genre [CT_Num]).
29 déc. 2022 à 17:48
Private Sub Effacer_Recherche_Click()
Me.Rech_RefClient.Value = ""
Me.Rech_Client.Value = ""
Me.Rech_Collab.Value = ""
Forms![Gestion des Plafonds]![Controle Depassement Client].Form.RecordSource = "SELECT [Controle Depassement Client].RefClient,[Controle Depassement Client].Client,[Controle Depassement Client].Plafond,[Controle Depassement Client].SoldeTot,[Controle Depassement Client].Depassement,[Controle Depassement Client].SoldeA,[Controle Depassement Client].SoldeB,[Controle Depassement Client].CO_Nom,[Controle Depassement Client].BL,[Controle Depassement Client].[Total BL] from [Controle Depassement Client] where [Controle Depassement Client].Client Like '*" & Replace(Me.[Rech_Client], "'", "''") & "*'"
End Sub
Private Sub Rech_Client_AfterUpdate()
Forms![Gestion des Plafonds]![Controle Depassement Client].Form.RecordSource = "SELECT [Controle Depassement Client].RefClient,[Controle Depassement Client].Client,[Controle Depassement Client].Plafond,[Controle Depassement Client].SoldeTot,[Controle Depassement Client].Depassement,[Controle Depassement Client].SoldeA,[Controle Depassement Client].SoldeB,[Controle Depassement Client].CO_Nom,[Controle Depassement Client].BL,[Controle Depassement Client].[Total BL] from [Controle Depassement Client] where [Controle Depassement Client].Client Like '*" & Replace(Me.[Rech_Client], "'", "''") & "*'"
End Sub
Private Sub Rech_Client_Change()
Forms![Gestion des Plafonds]![Controle Depassement Client].Form.RecordSource = "SELECT [Controle Depassement Client].RefClient,[Controle Depassement Client].Client,[Controle Depassement Client].Plafond,[Controle Depassement Client].SoldeTot,[Controle Depassement Client].Depassement,[Controle Depassement Client].SoldeA,[Controle Depassement Client].SoldeB,[Controle Depassement Client].CO_Nom,[Controle Depassement Client].BL,[Controle Depassement Client].[Total BL] from [Controle Depassement Client] where [Controle Depassement Client].Client Like '*" & Me.[Rech_Client] & "*'"
End Sub
Private Sub Rech_Client_Enter()
Forms![Gestion des Plafonds]![Controle Depassement Client].Form.RecordSource = "SELECT [Controle Depassement Client].RefClient,[Controle Depassement Client].Client,[Controle Depassement Client].Plafond,[Controle Depassement Client].SoldeTot,[Controle Depassement Client].Depassement,[Controle Depassement Client].SoldeA,[Controle Depassement Client].SoldeB,[Controle Depassement Client].CO_Nom,[Controle Depassement Client].BL,[Controle Depassement Client].[Total BL] from [Controle Depassement Client] where [Controle Depassement Client].Client Like '*" & Me.[Rech_Client] & "*'"
End Sub
Private Sub Rech_Collab_AfterUpdate()
Forms![Gestion des Plafonds]![Controle Depassement Client].Form.RecordSource = "SELECT [Controle Depassement Client].RefClient,[Controle Depassement Client].Client,[Controle Depassement Client].Plafond,[Controle Depassement Client].SoldeTot,[Controle Depassement Client].Depassement,[Controle Depassement Client].SoldeA,[Controle Depassement Client].SoldeB,[Controle Depassement Client].CO_Nom,[Controle Depassement Client].BL,[Controle Depassement Client].[Total BL] from [Controle Depassement Client] where [Controle Depassement Client].CO_Nom Like '*" & Me.[Rech_Collab] & "*'"
End Sub
Private Sub Rech_Collab_Change()
Forms![Gestion des Plafonds]![Controle Depassement Client].Form.RecordSource = "SELECT [Controle Depassement Client].RefClient,[Controle Depassement Client].Client,[Controle Depassement Client].Plafond,[Controle Depassement Client].SoldeTot,[Controle Depassement Client].Depassement,[Controle Depassement Client].SoldeA,[Controle Depassement Client].SoldeB,[Controle Depassement Client].CO_Nom,[Controle Depassement Client].BL,[Controle Depassement Client].[Total BL] from [Controle Depassement Client] where [Controle Depassement Client].CO_Nom Like '*" & Me.[Rech_Collab] & "*'"
End Sub
Private Sub Rech_RefClient_AfterUpdate()
Forms![Gestion des Plafonds]![Controle Depassement Client].Form.RecordSource = "SELECT [Controle Depassement Client].RefClient,[Controle Depassement Client].Client,[Controle Depassement Client].Plafond,[Controle Depassement Client].SoldeTot,[Controle Depassement Client].Depassement,[Controle Depassement Client].SoldeA,[Controle Depassement Client].SoldeB,[Controle Depassement Client].CO_Nom,[Controle Depassement Client].BL,[Controle Depassement Client].[Total BL] from [Controle Depassement Client] where [Controle Depassement Client].RefClient Like '*" & Me.[Rech_RefClient] & "*'"
End Sub
Private Sub Rech_RefClient_Change()
Forms![Gestion des Plafonds]![Controle Depassement Client].Form.RecordSource = "SELECT [Controle Depassement Client].RefClient,[Controle Depassement Client].Client,[Controle Depassement Client].Plafond,[Controle Depassement Client].SoldeTot,[Controle Depassement Client].Depassement,[Controle Depassement Client].SoldeA,[Controle Depassement Client].SoldeB,[Controle Depassement Client].CO_Nom,[Controle Depassement Client].BL,[Controle Depassement Client].[Total BL] from [Controle Depassement Client] where [Controle Depassement Client].RefClient Like '*" & Me.[Rech_RefClient] & "*'"
End Sub
Private Sub Rech_RefClient_Enter()
Forms![Gestion des Plafonds]![Controle Depassement Client].Form.RecordSource = "SELECT [Controle Depassement Client].RefClient,[Controle Depassement Client].Client,[Controle Depassement Client].Plafond,[Controle Depassement Client].SoldeTot,[Controle Depassement Client].Depassement,[Controle Depassement Client].SoldeA,[Controle Depassement Client].SoldeB,[Controle Depassement Client].CO_Nom,[Controle Depassement Client].BL,[Controle Depassement Client].[Total BL] from [Controle Depassement Client] where [Controle Depassement Client].RefClient Like '*" & Me.[Rech_RefClient] & "*'"
End Sub
voici un peu les autres requetes qui regissent le macro. j'ai repris le travail de quelqu'un et j'ai du mal à comprendre ce qu'il a fait au fait
29 déc. 2022 à 18:09
bonjour,
quand tu partages du code, merci de tenir compte de ceci: https://codes-sources.commentcamarche.net/faq/11288-poster-un-extrait-de-code
Quel est le lien entre l'expression montrée au départ et le code montré en #4?
Comme tu as modifié le code montré au départ, ne penses-tu pas utile de montrer ce qu'il est devenu?
30 déc. 2022 à 12:46
Merci @yg_be StatutContributeur. D'accord. je prendrai compte de cela. Je montre juste les modules sur lesquels fonctionnent le formulaire Access
Le code montré au départ, je l'ai modifié en remplaçant les ' par les "
30 déc. 2022 à 19:27
montre nous le code modifié.
29 déc. 2022 à 18:09
Le requête en erreur n'est pas dans le code que tu as donné...
30 déc. 2022 à 12:46
donc cela se trouve dans la première alors. Bonjour @blux StatutModérateur
29 déc. 2022 à 18:17
Comment se fait-il que ce problème apparaisse subitement?
Modifies-tu le travail de quelqu'un sans comprendre ce qu'il a fait?
29 déc. 2022 à 18:29
Comment se fait-il que ce problème apparaisse subitement?
C'est peut-être la récente création de l'abbaye qui le déclenche...
29 déc. 2022 à 18:46
Le code existant semble se prémunir contre la présence d'apostrophe dans les champs:
"SELECT ... where Client Like '*" & Replace(Me.[Rech_Client], "'", "''") & "*'"
30 déc. 2022 à 12:47
J'essaie de modifier en comprenant. Mais je me suis perdu voila pourquoi je me tourne vers les experts.
30 déc. 2022 à 12:48
tout à fait. c'est pour cela que je me sens perdu
30 déc. 2022 à 12:49
y'a pas eu de nouvelle création. le client a toujours existé on a juste changé de représentant au client
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question30 déc. 2022 à 14:05
Donc je maintiens ce que j'ai dit, l'erreur que tu nous montres ne semble pas couverte par le traitement spécifique des autres requêtes dont tu nous as donné le code (la clause "replace...").
29 déc. 2022 à 17:17
Merci @blux StatutModérateur j'ai changé les ' par " et là il me retourne aucune donnée pourtant y'a des données à retourner au fait. et là, sur tous les autres clients, il retourne aucune données alors qu'avant c'est seulement les clients avec apostrophe qui retournait erreur de syntaxe