Problème lancement requete via VBA
Bonsoir à tous,
Voila, j'ai un problème d'execution de requête SQL via VBA. Lorsque l'evenement clic du bouton est enclenché, j'ai l'erreur d'execution 3142 : Caractères trouvés après la fin de l'instruction SQL.
Code:
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
|
Private Sub Execution_Click()
'Definition
Dim rs As Recordset
Dim rsc As Recordset
Dim sqlcom As String
Dim sqlcnt As String
Dim sqlb As String
Dim nbContact As Integer
Dim nbContrat As Integer
'Affectation
Set rs = CurrentDb.OpenRecordset("DCom", dbOpenSnapshot)
sqlcnt = "SELECT COUNT(I.Cial) FROM [Informations Sources] AS I WHERE I.Cial LIKE "
sqlb = "SELECT COUNT(I.Nom) FROM [Informations Sources] AS I WHERE VENTE IS NOT NULL AND I.Cial LIKE "
'Traitement
With rs
Do Until .EOF
'rsc => nb contact + contrats pour un commercial
sqlcnt = sqlcnt & "'" & rs("Nom").Value & "'" & " ;" & vbCrLf
Set rsc = CurrentDb.OpenRecordset(sqlcnt, dbOpenDynaset)
nbContact = rsc.RecordCount
rsc.Close
sqlb = sqlb & "'" & rs("Nom").Value & "'" & " ;" & vbCrLf
Set rsc = CurrentDb.OpenRecordset(sqlb, dbOpenDynaset)
nbContrat = rsc.RecordCount
rsc.Close
'Insertion des valeurs
sqlb = "INSERT INTO Commercial(nbcontact, nbcontrat) SELECT " & nbContact & ", " & nbContrat & " FROM Commercial AS c WHERE c.Nom = " & "'" & rs("Nom").Value & "'" & " ;" & vbCrLf
DoCmd.RunSQL (sqlb)
.MoveNext
Loop
End With
rs.Close
End Sub |
L'erreur se produit lorsque le recordset tente d'ouvrir la requete à la ligne 20 du code. Et j'imagine que pour la ligne 23, je devrais avoir le même problème.
VBA Access est un nouveau langage pour moi et j'ai beau faire des recherches sur le net, je n'ai pas trouvé ou était mon erreur...
Merci d'avance pour vos réponses !