bonjour à tous,
Je n'arrive pas à solutionner mon problème, aussi j'ai besoin de votre aide.
A partir de 2 recordsets, je veux mettre à jour une table.
Mon premier recordset "rst" liste les élements de ma table "CompositionTarif"
Mon second recordset "rst1" liste les éléments de ma table Famille (dont la valeur NvFam est à False)
Je souhaite mettre à jour une table Tbl_CoeffGamGr et donc je veux ajouter toutes les familles pour chaque tarif.
Voici ma syntaxe :
Je sais que ça ne peut pas coller, car évidemment quand j'arrive au bout de mon premier recordset la valeur EOF change.
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 Private Sub Commande28_Click() Dim db As Database Dim rst As Recordset Dim rst1 As Recordset Dim SqlQuery As String, SqlQuery1 As String Dim StrSqlInsert15 As String Set db = CurrentDb 'sélection des tarifs clients SqlQuery = ("SELECT N°_Tarif FROM Tbl_CompositionTarif") Set rst = db.OpenRecordset(SqlQuery) 'Debug.Print SqlQuery SqlQuery1 = ("SELECT Tbl_Famille.Famille FROM Tbl_Famille " & _ "LEFT JOIN Tbl_CoeffGamGr ON Tbl_Famille.Famille=" & _ "Tbl_CoeffGamGr.FamGamGr WHERE (((Tbl_Famille.NvFam)=False));") Set rst1 = db.OpenRecordset(SqlQuery1) 'Debug.Print SqlQuery1 '==================================================================================================================== 'boucle sur le recordset....sqlQuery = ("SELECT N°_Tarif FROM Tbl_CompositionTarif") 'On passe en revue tous les tarifs clients Do While Not rst1.EOF Do While Not rst1.EOF StrSqlInsert15 = "INSERT INTO Tbl_CoeffGamGr ( TARIFS, FamGamGr ) " & _ "SELECT '" & rst.Fields("N°_Tarif").Value & "' AS Expr1, " & _ "Tbl_Famille.Famille FROM Tbl_Famille LEFT JOIN " & _ "Tbl_CoeffGamGr ON Tbl_Famille.Famille = Tbl_CoeffGamGr.FamGamGr " & _ "WHERE (((Tbl_Famille.Famille)='" & rst1.Fields("Famille").Value & "'));" MsgBox rst1.Fields("Famille").Value & " " & rst.Fields("N°_Tarif").Value 'Debug.Print StrSqlInsert15 'db.Execute (StrSqlInsert15), dbFailOnError rst1.MoveNext Loop rst1.MoveNext Loop End Sub
Pouvez-vous m'aider.
Daneil
Partager