Bonjour,
Nous avons au boulot une appli qui effectue certains calculs et, a la fin de ces calculs, nous permet d'enregistrer les data (nom, prenom ..... etc)
Nous accedons a ces data via une datagridview située dans un form, et celle ci est reliée a une petite BDD access

voici un exemple de vue de la datagrid et de la table access concernee :

La datagrid


La table access


Je n'ai aucun souci d'enregistrement et les data correspondent bien.

Je peux aussi selectionner un nom (par exemple "dujardin" dans la datagrid, et par double clic, reinjecter les données dans les formulaires initiaux.

Je dois aussi pouvoir entrer des données supplémentaires sur un enregistrement existant. Pour cela, je reinjecte le nom dans le formulaire, j'insére les data dans les textbox appropriées et je sauvegarde.

Mon souci :
Je n'arrive absolument pas a ajouter les datas entrées a l'enregistrement existant. Le logiciel me recrée un nouvel enregistrement et du coup, j'ai l'original + le nouveau ce qui n'est pas le but.

Comment pourrais je proceder ?

voici ma sub enregistrement general, je cherche comment créer une sub qui enregistrerait les données supplémentaires a l'enregistrement deja existant

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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
Public Sub Enregistrebase()
        ' Demande d'enregistrement dans la base
        If langue = "en" Then
            messageaff = "Do you want to record the preceding consultation in the database ?"
            infoaff = "Recording consultation"
        Else
            messageaff = "Voulez-vous enregistrer la précédente consultation dans la base de données ?"
            infoaff = "Enregistrement consultation"
        End If
        If MessageBox.Show(messageaff, infoaff, MessageBoxButtons.YesNo, MessageBoxIcon.Question) = DialogResult.Yes Then
            ' enregistrement de la consultation dans la base
            With examen ' les champs à enregistrer
                ' nom du praticien
                ' jour examen
                ' nom du patient
                ' prénom du patient
                ' date naissance du patient
                ' age du patient
                ' oeil traité
                ' S
                ' C
                ' Axe
                ' sc
                ' cc
                ' ac
                ' dva
                ' add
                ' nva
                ' K1
                ' K2
                ' QI
                ' Pachy
                ' ACD
                ' AL
                ' AD
                ' Pseudophake (champ texte)
                ' Pupilmeso 
                ' Pupilphoto
                ' Pupilmax
                ' IOPcc
                ' CRF
                ' CH
                ' SEL
                ' QL vision de loin
                ' Q (Q1 = Q2)
                ' Epsilon (Epsilon1 = Epsilon2)
                ' Qt
                ' Qideal = QFPROP
                ' QF
                ' deltaQ
                ' KIMAGE (K1IMAGE = K2IMAGE dans Visiondepres)
                ' TS : valeur de TS dans vision de pres
                ' second (champ texte)
                ' relift (champ texte)
                ' version (champ texte)
                ' flagimage pour Visiondepres
                'datasup1                             ==> data supplementaires
                'datasup2                             ==> data supplementaires
                Dim sqltxt As String = "Insert into Consultations Values('" & .praticien & "','" & .jexamen & "', '" & .nom & "','" & .prenom & "','" & .naissance & "','" & .age & "','" & .oeil & "','" & .S & "','" & .C & "','" & .Axe & "','" & .sc & "','" & .cc & "','" & .ac & "','" & .dva & "','" & .add & "','" & .nva & "','" & .K1 & "','" & .K2 & "','" & .QI & "','" & .Pachy & "','" & .ACD & "','" & .AL & "','" & .AD & "','" & .Pseudophake & "','" & .Pupilmeso & "','" & .Pupilphoto & "','" & .Pupilmax & "','" & .iopcc & "','" & .crf & "','" & .ch & "','" & .SL & "','" & .QL & "','" & .Q1et2 & "','" & .Epsilon & "','" & .QT & "','" & .Qideal & "','" & .QF & "','" & .deltaQ & "','" & .KIMAGE & "','" & .TS & "','" & .relift & "','" & .version & "','" & .flagimage & "','" & .datasup1 & "','" & .datasup2 & "');"
                Using cmd As OleDbCommand = New OleDbCommand(sqltxt, con)
                    Try
                        ' on se connecte à la base
                        con.Open()
                        cmd.ExecuteNonQuery()
                        con.Close()
 
                    Catch ex As Exception
                        If langue = "en" Then
                            messageaff = "An error occurred during the access in writing of the list of the consultations"
                            infoaff = "Error writing file"
                        Else
                            messageaff = "Une erreur est survenue au cours de l'accès en écriture à la liste des consultations"
                            infoaff = "Erreur écriture fichier"
                        End If
                        MessageBox.Show(messageaff, infoaff, MessageBoxButtons.OK, MessageBoxIcon.Warning)
                    End Try
                End Using
            End With
        End If
        enregistrement = False ' enregistrement fait ou demande de non-enregistrement : donc plus d'enregistrement disponible à enregistrer 
 
    End Sub
Merci pour votre aide précieuse