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 : Sélectionner tout - Visualiser dans une fenêtre à part
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![].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.