VBA - SQL - problème de syntaxe sql dans Insert …values
Bonjour,
J’ai un problème de syntaxe sql dans un module AC-2016. Je suis complètement perdu pour avoir un sql INSERT INTO … VALUES.
Voici la routine :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| Private Sub Nom_AfterUpdate()
Dim CeJour As Date
CeJour = Format(Date, "dd/mm/yyyy")
'
Ajout = Me.Controls![N°].Value
'
' Ce sql fonctionne !
'StrSQL = "INSERT INTO tbl_data (Id) VALUES ('" & Ajout & "' );"
'
' Pas celui-ci :
'
StrSQL = "INSERT INTO tbl_data (Id,Date_1er_Contact) VALUES ('" & Ajout & "', Cejour );"
'
'
DoCmd.SetWarnings False
DoCmd.RunSQL StrSQL
DoCmd.SetWarnings True
'
End Sub |
Le premier sql fonctionne parfaitement :
StrSQL = "INSERT INTO tbl_data (Id) VALUES ('" & Ajout & "' );"
Seulement, j’ai deux valeurs à ajouter et n’arrive pas à trouver la bonne syntaxe. L’erreur est certainement dans la partie VALUES. Au mieux, lors de l’exécution, un pop-up me demande la valeur de la donnée Ce Jour.
J’ai essayé toutes sortes de possibilité (‘ " [& …, sans succès.
StrSQL = "INSERT INTO tbl_data (Id,Date_1er_Contact) VALUES ('" & Ajout & "', Cejour );"
‘Ajout’ est un nombre issu d’un champ de formulaire à ajouter à un champ numérique.
‘CeJour’ est la date du jour à ajouter à un champ date.
Pourriez-vous m’aider ? J’ai passé la moitié de la nuit dernière et toute la matinée à fouiller le net à la recherche d’un exemple à deux variables.
Merci d’avance.
VBA - SQL - problème de syntaxe sql dans Insert …values
Bonjour micniv,
Merci pour votre aide. La routine est donc la suivante :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| Private Sub Nom_AfterUpdate()
Dim CeJour As Date
Dim Ajout As Single
'
CeJour = Format(Date, "dd/mm/yyyy")
Ajout = Me.Controls![N°].Value
'
'StrSQL = "INSERT INTO tbl_data (Id) VALUES ('" & Ajout & "' );"
'
StrSQL = "INSERT INTO tbl_data (Id, Date_1er_Contact) VALUES ('" & Ajout & "', #" & CeJour & "#)"
'
DoCmd.SetWarnings False
DoCmd.RunSQL StrSQL
DoCmd.SetWarnings True
End Sub |
Cela fonctionne parfaitement. Un grand merci pour votre aide. Sans elle, j’aurais encore galéré longtemps.
Cordialement,