j'essaie d'exporter le résultat d'un select dans un classeur excel voici mon code:
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
26
27
28
29
30
31
32
33
34
 Dim xlApp As Excel.Application
        Dim xlBook As Excel.workbook
        Dim xlSheet As Excel.Worksheet
 
        xlApp = CType(CreateObject("Excel.Application"), Excel.Application)
        xlBook = CType(xlApp.workbooks, Excel.Workbook)
        xlSheet = CType(xlBook.Worksheets(1), Excel.Worksheet)
 
        ' ici on compte le nombre de lignes et de colonnes du datatable
        Dim nbrLigne As Integer = DataSet1.Tables("da").Rows.Count - 1
        Dim nbrColon As Integer = DataSet1.Tables("da").Columns.Count - 1
        Dim x, y As Integer
 
        For x = 0 To nbrColon
            ' ici on prends le titre des colonnes du datatable
            xlSheet.Cells(1, x + 1) = DataSet1.Tables("da").Columns(x).ColumnName
            ' on mets la première ligne en gras
            xlSheet.Rows(1).Font.Bold = True
 
            ' pour chaque colonne et chaque ligne on transfert les données      
            For y = 0 To nbrLigne
                xlSheet.Cells(y + 2, x + 1) = DataGridView1.Item(y, x)
            Next
        Next
 
        ' ici on affiche les résultat dans excel
        xlSheet.Application.Visible = True
        ' on peut sauvegarder notre document sur le disque
        xlSheet.SaveAs("C:\nom_document.xls")
        ' on quitte l'application et on détruit les objets
        xlApp.Quit()
        xlSheet = Nothing
        xlBook = Nothing
        xlApp = Nothing
j'ai cette erreur:
Impossible d'effectuer un cast d'un objet COM de type 'System.__ComObject' en type d'interface 'Microsoft.Office.Interop.Excel.Workbook'. Cette opération a échoué, car l'appel QueryInterface sur le composant COM pour l'interface avec l'IID '{000208DA-0000-0000-C000-000000000046}' a échoué en raison de l'erreur suivante : Cette interface n’est pas prise en charge (Exception de HRESULT : 0x80004002 (E_NOINTERFACE)).