J'ai repris sur le site de Raymond,
http://officesystem.access.free.fr/vba/export_recordset.htm
la macro qui va bien tant qu'il n'y a pas de parametre dans la
requ=E8te.
Private Sub Commande0_Click()
'!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
' Pour avoir acc=E8s =E0 Excel vous devez r=E9f=E9rencer la
librairie:
' Alt F11 / 'Menu outils , r=E9f=E9rences. / cocher la ligne :
Microsoft Excel nn.0 Object Library
' cocher la ligne :
Microsoft Activex Data Objects 2.7 Librarie
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Dim Feuille_Excell As String
Dim Classeur_Excell As String
Dim BDD_Access As String
Dim Requete_Access As String
Dim conn As New ADODB.Connection
Dim Rs As ADODB.Recordset
conn.Open "Provider=3DMicrosoft.Jet.OLEDB.4.0;Data Source=3D" &
BDD_Access & ";"
conn.CursorLocation =3D adUseClient
'!!!!!!!! =E7a doit etre l=E0 qu'il faut introduir ele parametre mais
comment ? !!!!!!!!!!!!!!!
Set Rs =3D conn.Execute(Requete_Access, , adCmdTable)
Dim XL_App As Object
Set XL_App =3D CreateObject("Excel.Application")
Dim XL_classeur As Object
Dim XL_feuille As Object
With XL_App
Set XL_classeur =3D .Workbooks.Open(Classeur_Excell)
Set XL_feuille =3D XL_classeur.Sheets(Feuille_Excell)
With XL_feuille
XL_feuille.Range("A20").CopyFromRecordset Rs
End With
.ActiveWorkbook.Save
.ActiveWorkbook.Close
.Quit
End With
Rs.Close
conn.Close
Set XL_App =3D Nothing
Set XL_classeur =3D Nothing
Set XL_feuille =3D Nothing
End Sub
Mais j'ai besoin de transf=E9rer des donn=E9es avec 1 parametre - un
nombre entier- dans la requete,
comment glisser celui ci ?