Bonjour à tous.
Dans le cadre de mon travail, j'ai suivi le tutoriel de Fabrice Constans sur le moteur de recherche. Celui-ci fonctionne parfaitement (après quelques difficultés à mettre en place l'édition dans un formulaire des résultats).
Il ne me manque qu'une seule fonctionnalité, qu'il n'a pas encore développé, mais qui m'aiderait bien, c'est à dire l'exportation vers Excel des résultats.
J'ai bien tenté plusieurs approches, mais qui se soldent par des erreurs.
J'ai essayé celui-ci :
Celui-ci me renvoie que la base est verrouillée. Une fois que je fais sauter l'instruction qui bloque, le programme plante au niveau du Select (je n'ai pas remis les champs, mais il y en a un qui comporte des espaces, peut être est-ce qui bloque?).
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
23
24
25 Set MaConn = New ADODB.Connection MaConn.Provider = "Microsoft.Jet.OLEDB.4.0;" MaConn.Open "chemin et nom de ta base" Dim rstTable As ADODB.RecordSet Set rstTable = New ADODB.RecordSet Dim sel As String sel = "select champ1 champ2 from lst_resultat" 'ta selection de ta liste rstTable.Open sel, MaConn, adOpenStatic, adLockOptimistic Open "fichier.xls" For Output As #1 Do Until rstTable.EOF Print #1, rstTable!champ1+"[UNE TABULTION]"+rstTable!champ2 rstTable.MoveNext Loop Close #1 set rstTable=nothing set maconn=nothing
J'ai tenté avec les library excel, notamment le code proposé par arkham, mais je ne vois pas comment lui dire de prendre les résultats de ma zone de liste :
Peut être que la solution se trouve sous mes yeux. enfin, si vous pouvez m'éclairer de vos lumières, je vous en saurais reconnaissant.
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
23
24
25 Dim ExcelApp As Excel.Application Dim ExcelWb as Excel.WorkBook Dim Excelsheet As Excel.WorkSheet Dim oDb as DAO.DataBase Dim oRs as DAO.Recordset ' Création Objets Excel Set ExcelApp = CreateObject("Excel.application") Set ExcelWb = ExcelApp.Workbooks.Add Set Excelsheet = ExcelApp.worksheets(1) ' Création Objets DAO Set oDb = CurrentDb set oRs = oDb.OpenRecordSet("Select TesChamps From Table Where LeChamp = 'TonCritère'") ' Export du recordset dans Excel Excelsheet.Cells(1,1).CopyFromRecordset oRs ' Fermeture des objets DAO oRs.Close Set oRs = Nothing Set oDb = Nothing ' Sauvegarde du classeur Excel ExcelWb.SaveAs "C:\Test.xls" ' Fermeture des objets Excel Set Excelsheet = Nothing Set ExcelWb = Nothing Set ExcelApp = Nothing
D'avance merci
MD
Partager