Ce que je voudrais faire c'est stocker le résultat d'une requete dans une variable et utiliser cette variable dans une boucle, en utilisant l'objet recordset.
Mais ca peche au niveau de la connexion à une BD
Mon code:
Private Sub ImportExcel_Click()
Dim Cnx As New ADODB.Connection
Dim rst As ADODB.Recordset
Dim dbs As Database 'ce type n'est pas reconnu??
Dim SQL As String
'Declaration du provider de base de donnees
Cnx.Provider = "Microsoft.Jet.Oledb.4.0"
'Declaration du chemin d'acces a la base de donnees
Cnx.ConnectionString = "S:\mabase.mdb"
'Ouverture de la base
Cnx.Open
Set rst = New ADODB.Recordset
rst.CursorLocation = adUseClient
rst.Open SQL, Cnx, adOpenDynamic, adLockOptimistic, adCmdText
Do Until rst.EOF
SQL = "select chemin FROM tab_ref" & ";" 'chemin est un champ de tab_ref
'(WHERE rst = current rst est sous entendu?)
DoCmd.DeleteObject acTable, SQL 'j'efface la table deja existante
'Ici je suis censé créer une table portant le nom SQLqui est aussi le chemin SQL.xls
DoCmd.TransferSpreadsheet acImport, , SQL, "S:" & SQL & ".xls", 0