Je vous souhaite de bonnes fêtes et merci d'avance si vous pouvez m'aider.
La macro ci-dessous reprend des données dans le tableau Excel (Feuil1) par une requête 'SELECT * FROM ' qui extrait les données en fonction d'un critère sur colonne5.
=> OK : en recherchant la valeur T1 c'est OK il affiche + 11 000 lignes 'T1'
=> NOK : en recherchant la valeur T2 ca bloque 'Methode CopyFromRecorset a échoué' à 2175 lignes et je n'arrive pas a trouver la source de l'erreur.
Sub TEST()
Dim TableauExcel As DAO.Database
Dim RS As DAO.Recordset
Req = "SELECT * " & _
"FROM BASE " & _
"WHERE BASE.[Colonne5] = '" & Range("E6") & "' "
Set TableauExcel = OpenDatabase(ThisWorkbook.FullName, False, False, "Excel 8.0")
Set RS = TableauExcel.OpenRecordset(Req)
Range("A10:BB10000").ClearContents
If RS.RecordCount <> 0 Then
For Champ = 1 To RS.Fields.Count
Cells(10, 0 + Champ) = RS.Fields(Champ - 1).Name
Next Champ
Range("A11").CopyFromRecordset RS
End If
End Sub
La macro ci-dessous reprend des données dans le tableau Excel (Feuil1) par une requête 'SELECT * FROM ' qui extrait les données en fonction d'un critère sur colonne5.
=> OK : en recherchant la valeur T1 c'est OK il affiche + 11 000 lignes 'T1'
=> NOK : en recherchant la valeur T2 ca bloque 'Methode CopyFromRecorset a échoué' à 2175 lignes et je n'arrive pas a trouver la source de l'erreur.
Sub TEST()
Dim TableauExcel As DAO.Database
Dim RS As DAO.Recordset
Req = "SELECT * " & _
"FROM BASE " & _
"WHERE BASE.[Colonne5] = '" & Range("E6") & "' "
Set TableauExcel = OpenDatabase(ThisWorkbook.FullName, False, False, "Excel 8.0")
Set RS = TableauExcel.OpenRecordset(Req)
Range("A10:BB10000").ClearContents
If RS.RecordCount <> 0 Then
For Champ = 1 To RS.Fields.Count
Cells(10, 0 + Champ) = RS.Fields(Champ - 1).Name
Next Champ
Range("A11").CopyFromRecordset RS
End If
End Sub