Inserer le contenu d'une requete dans 1 table

Résolu
gaudian Messages postés 62 Statut Membre -  
gaudian Messages postés 62 Statut Membre -
Bonjour,

Je souhaiterai savoir comment on peut insérer le contenu d'une requête dans une instruction INSERT INTO. Voici mon exemple

Private Function Exclusion_NIP()
    
    Set DB1 = DBEngine(0)(0)
    Set RS1 = DB1.OpenRecordset("essaiRequete")
    Set RS2 = DB1.OpenRecordset("essaiRequete")
    
    RS1.MoveFirst
    RS2.MoveFirst
    
    Do Until RS1.EOF
        Do Until RS2.EOF
            'Si les 2 NIP ne sont pas identiques Alors
            If Trim(RS1.Fields("NIP")) <> Trim(RS2.Fields("NIP")) Then
                    SQL = "INSERT INTO tb_Resultat_1 ( nip, ngs ) " & _
                                 "VALUES (.........)"
                          
               DoCmd.RunSQL SQL
                              
               'Ensuite on passe à l'enregistrement suivant
               RS2.MoveNext
               
               'Sinon Si les 2 NIP sont identiques Alors
               ElseIf Trim(RS2.Fields("NIP")) = Trim(RS1.Fields("NIP")) Then
                    SQL = "INSERT INTO tb_SauvegardeTemporaire ( [NumOperationTransfert] ) " & _
                                "VALUES ('test')"
                          
                    DoCmd.RunSQL SQL
    
                    'Ensuite on passe à l'enregistrement suivant
                    RS2.MoveNext
            End If
        Loop
        RS2.MoveFirst
        RS1.MoveNext
    Loop
    
    RS1.Close
    RS2.Close
    
End Function


La ou il y a des ....., c'est la que j'ai besoin de vous
Merci d'avance
Configuration: Windows XP
Internet Explorer 6.0

1 réponse

  1. gaudian Messages postés 62 Statut Membre 3
     
    J'ai trouvé la solution, je la donne si quelqu'un à le même problème

    Private Function Exclusion_NIP()
            
        Set DB1 = DBEngine(0)(0)
        Set RS1 = DB1.OpenRecordset("essaiRequete")
        Set RS2 = DB1.OpenRecordset("essaiRequete")
        
        RS1.MoveFirst
        RS2.MoveFirst
        
        Do Until RS1.EOF
            Do Until RS2.EOF
                If Trim(RS1.Fields("NIP")) <> Trim(RS2.Fields("NIP")) Then
                  SQL = "INSERT INTO tb_Resultat_1 (nip,ngs) " & _
                              "VALUES (' " & RS2.Fields("NIP") & " , 'ESSAI' )"
                              
                  DoCmd.SetWarnings False
                  DoCmd.RunSQL SQL
                  
                   RS2.MoveNext
                   
                   ElseIf Trim(RS2.Fields("NIP")) = Trim(RS1.Fields("NIP")) Then
                        SQL = "INSERT INTO tb_SauvegardeTemporaire ( [NumOperationTransfert] ) " & _
                                    "VALUES ('test')"
                              
                        DoCmd.SetWarnings False
                        DoCmd.RunSQL SQL
                        
                       RS2.MoveNext
                End If
            Loop
            RS2.MoveFirst
            RS1.MoveNext
        Loop
        
        RS1.Close
        RS2.Close
        
    End Function
    
    1