Mise en oeuvre de UPDATE dans du code sql
bonjour,
je vous soumets un petit problème concernant la mise à jour d'un champ en utilisant SQL (UPDATE)
J'ai créé un formulaire à partir d'une table et je voudrais mettre à jour un champ CATEGORY, en fonction du contenu d'un autre champ CLASS_ERP
Pour cela j’utilise un select case pour gérer les différents cas afin de déterminer la valeur à mettre à jour.
Le select case fonctionne mais pas la mise à jour car j'ai un message d'erreur
ERREUR DE SYNTAXE (OPERATEUR ABSENT) DANS L'EXPRESSION 40006304;NAT_GES='65'
Mais Lorsque je remplace les valeurs numériques par des lettres A, B,..... cela fonctionne bien
Ou peut se trouver mon erreur ?
merci
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
| Private Sub NAT_GES_GotFocus()
Dim DB As DAO.Database: Set DB = CurrentDb
Dim r As DAO.Recordset: Set r = DB.OpenRecordset("40006304", dbOpenTable)
Dim myvariant As Variant
Dim strsql As String
myvariant = [NAT_GES]
r.MoveFirst
If IsNull(myvariant) Or myvariant = "" Then
MsgBox ("egal vide")
Else
Select Case myvariant
Case "65"
MsgBox ("asm article")
strsql = "UPDATE 40006304 SET 40006304.CLASS_ART='asm article'WHERE 40006304.NAT_GES ='65'"
CurrentDb.Execute strsql
Case "12"
MsgBox ("elet standard")
strsql = "UPDATE 40006304 SET 40006304.CLASS_ART = 'element standard'WHERE 40006304.NAT_GES ='12'"
CurrentDb.Execute strsql
Case "32"
MsgBox ("prt article")
strsql = "UPDATE 40006304 SET 40006304.CLASS_ART = 'prt article' WHERE 40006304.NAT_GES ='32'"
CurrentDb.Execute strsql
Case Else
MsgBox ("pas prevu")
End Select
End If
End Sub |