Bonjour,
Je cherche à dupliquer des informations en passant par un recordset. Débutant dans ce domaine et ayant lu la FAQ, j'ai quand même du mal.
Je ne comprends pas bien dans le code ci dessous :
Je ne sais pas quoi mettre dans LigneProtocole et LibelleLigne. Voilà mon code pour l'instant. Le but est de dupliquer un formulaire et ses deux sous-formulaires.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 sql = "insert into LigneProtocole (IdProtocole,Libelleligne) SELECT " & _ id & ", LibelleLigne FROM LigneProtocole WHERE idprotocole=1"
Merci pour votre aide.
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 Private Sub Commande104_Click() Dim rstProtocole As DAO.Recordset, rstProtocole2 As DAO.Recordset Dim Db As DAO.Database, fld As DAO.Field Dim sql As String Dim id As Long Set Db = CurrentDb 'Ouvre le recordset où sera prélevé le protocole Set rstProtocole = Db.OpenRecordset("SELECT * FROM rqtContrat WHERE N°Interim = 1") 'Verifie que le protocole 1 existe If rstProtocole.EOF Then Exit Sub 'ouvre le recordset où sera ajouté le protocole Set rstProtocole2 = Db.OpenRecordset("rqtContratbis") 'Duplique le protocole With rstProtocole2 .AddNew 'duplique les champs For Each fld In rstProtocole.Fields .Fields(fld.Name) = fld.Value Next id = .Fields("N°Interim") .Update 'se positionne sur l'enregistrement ajouté End With 'Duplique les lignes sql = "insert into LigneProtocole (N°Interim,Libelleligne) SELECT " & _ id & ", LibelleLigne FROM LigneProtocole WHERE idprotocole=1" Db.Execute sql End Sub
Partager