Bonjour à tous,
Voila le tableau : je tente de faire une copie de recordset dans une table. Pour remplir la table en question je passe par une boucle. La boucle fonctionne mais ayant des champs pieces jointes et d'autre que je rempli manuellement j'ai crée une collection pour mettre le nom des champs sue je veux exclure de la boucle. Mais ça n'est pas très concluant puisque je me retrouve avec des messages d'erreur :
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 Dim db As DAO.Database Dim rs(1 To 3) As DAO.recordset Dim name As String Dim i, j As Long Set db = CurrentDb Set rs(1) = db.OpenRecordset("Select * from Tbl_EI where id_ei=" & Id_Ei, dbOpenSnapshot) Set rs(2) = db.OpenRecordset("Tbl_EI", dbOpenTable, dbAppendOnly) Dim nomchamps As New Collection nomchamps.Add ("Id_Employe") nomchamps.Add ("date_modification_ei") nomchamps.Add ("Modifié_par") nomchamps.Add ("Num_EI") nomchamps.Add ("Id_Employe") nomchamps.Add ("rapport") Do While Not rs(1).EOF ' You can place if condition here rs(2).AddNew rs(2).Fields("Id_Employe").Value = Cidemp rs(2).Fields("Num_EI").Value = rs(1).Fields("Id_ei").Value rs(2).Fields("date_modification_ei").Value = Now rs(2).Fields("Modifié_par").Value = Cemp For i = 0 To rs(1).Fields.Count - 1 If nomchamps(rs(1).Fields(rs(1).Fields.name)) = True Then GoTo line1 rs(2).Fields(rs(1).Fields(i).name) = rs(1).Fields(i).Value line1: Next i rs(2).update rs(1).MoveNext Loop
Partager