Bonjour,
Voilà en deux mots ce que je souhaite:
-l'utilisateur choisit une requête via une zone de liste
-Il choisit de l'executer soit une seule fois pour une période entre deux dates demandées par des msgbox (passage de paramètres à la requête)
-ou il choisit de l'executer autant de fois qu'il y a de périodes définies dans une table donnée.
-le résultat se copie dans une feuille excel (avec un peu de mise en forme) en gardant en première ligne le nom du champ sélectionné.
Voilà mon problème:
-le nom des Champs sélectionnés n'est pas récupéré comme si je faisai un copier/coller.
Voilà mon code:
Comment faire pour récupérer aussi les noms des champs sachant que le nombre de champs n'est pas toujours le même?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 Dim qry As QueryDef Dim wbk As Excel.Workbook Dim xls As Excel.Application Dim xlSheet As Excel.Worksheet 'on ouvre un classeur excel Set xls = New Excel.Application Set wbk = xls.Workbooks.Add 'on choisit la requête passée en paramètres Set qry = CurrentDb.QueryDefs(Nomrequete) qry.Parameters("DateDebut") = DateDebut qry.Parameters("DateFin") = DateFin Set xlSheet = wbk.Sheets.Add xlSheet.Name = "Du " & Replace(Str(DateDebut), "/", "-") & " au " & Replace(Str(DateFin), "/", "-") With xls With wbk.Sheets(xlSheet.Name) .Range("A2").CopyFromRecordset qry.OpenRecordset .Columns("A:Z").AutoFit End With End With
Partager