Bonjour,
J'ai un peu fouillé les forums, mais personne ne semble avoir posé de question quant à mon problème.
Dans l'instruction INSERT SQL ci-dessous, je veux, entre autres, insérer dans le nouvel enregistrement une date, passée sous forme de variable (en l'occurrence Me.Datefact).
Mon ordi est paramétré au format de date jj-mm-aa, le formulaire dont j'extrais la date également, et quand je vérifie ma chaîne strSQL avant le Docmd.RunSQL, je lis bien dans la chaîne #jj-mm-aa#.
Or, quand j'ouvre la table où j'ai créé l'enregistrement, mon jj-mm-aa de départ est devenu mm-jj-aa (mais le mm est considéré comme le jour, et le jj comme le mois. En effet, si je tape manuellement une date dans la même colonne, elle est au bon format). J'espère que je suis clair.
Au risque d'être redondant, un exemple chiffré : je passe #12-01-07#, et je lis dans l'enregistrement créé 01-12-07 (mais si je saisis une date manuellement dans la colonne, elle est bien au format jj-mm-aa)
Aurais-je oublié quelque chose?
Merci d'avance vos lumières :-)
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
20
21
22
23
24 Public Sub CréePaiement() Dim strSQL As String Dim strTTC As String With Me strTTC = Replace(Str(.TTC), ",", ".") strSQL = "INSERT INTO t_Paiements_Charges " strSQL = strSQL & "(Charge_ID, DatePaiement, MontantPaiement, ModePaiement_ID, Payeur, [Note]) VALUES " strSQL = strSQL & "(" & .txt_ID & ", #" & .DateFact & "#, " & strTTC strSQL = strSQL & ", " & .cboModePaiement & ", " & .cboPayeur & ", '" & .Note & "')" DoCmd.RunSQL strSQL ' Vérification de la création de l'enregistrement If Not DCount("[Charge_ID]", "[t_Paiements_Charges]", "Charge_ID = " & .txt_ID) = 1 Then MsgBox "Paiement simultané à cette charge non créé dans la table t_Paiements_Charges.", vbExclamation, "Enregistrement non créé" End If End With End Sub
Partager