Probleme mit Exportieren nach Excel aus Datatable

  • VB.NET

Es gibt 5 Antworten in diesem Thema. Der letzte Beitrag () ist von lris08.

    Probleme mit Exportieren nach Excel aus Datatable

    Hi,

    könntet Ihr mir da mal helfen?

    Fülle meine DataTable mit:

    VB.NET-Quellcode

    1. 'TODO: Diese Codezeile lädt Daten in die Tabelle "DBSysDataSet.Tab_Firmen". Sie können sie bei Bedarf verschieben oder entfernen.
    2. Me.Tab_FirmenTableAdapter.Fill_Firma1(Me.DBSysDataSet.Tab_Firmen, tstb_SucheFirma.Text, SF_Wert)


    mit diesem Code versuche ich den Inhalt der DataTable (Tab_Firmen > aus einer MDB Datenbank) nach Excel zu exportieren...
    Das Problem dabei ist, es werden zwar die Spalten angelegt, aber keine Werte eingefügt. Werte sind aber vorhanden, werden ja im DGV im Form angezeigt.

    VB.NET-Quellcode

    1. Module DataTableExportExcel
    2. Friend Sub ExportToExcel1()
    3. Dim DS As New DBSysDataSet
    4. Dim myExcel As New Microsoft.Office.Interop.Excel.Application
    5. Try
    6. ' Excel.Application
    7. myExcel.Application.Workbooks.Add()
    8. myExcel.Visible = True
    9. Dim myColumn As DataColumn
    10. Dim colIndex As Integer
    11. Dim rowIndex As Integer
    12. For Each myColumn In DS.Tab_Firmen.Columns
    13. colIndex += 1
    14. myExcel.Cells(1, colIndex) = myColumn.ColumnName
    15. Next
    16. Dim myRow As DataRow
    17. rowIndex = 1
    18. For Each myRow In DS.Tab_Firmen.Rows
    19. rowIndex += 1
    20. colIndex = 0
    21. Dim myColumn2 As DataColumn
    22. For Each myColumn2 In DS.Tab_Firmen.Columns
    23. colIndex += 1
    24. myExcel.Cells(rowIndex, colIndex) = myRow( _
    25. myColumn2.ColumnName).ToString()
    26. Next myColumn2
    27. Next myRow
    28. MsgBox("Der Export nach Excel wurde erfolgreich beendet!", _
    29. MsgBoxStyle.Information)
    30. Catch ex As Exception
    31. MsgBox(ex.Message)
    32. End Try
    33. End Sub
    34. End Module
    Hallo ErfinderDesRades :)

    Nein, erstaunlicherweise tritt kein Fehler auf.
    Es werden, wie geswagt sogar die Spaltenüberschriften angelegt, nur keine Datenausgegeben.
    Am Ende kommt MSGBox ... durchgelaufen.

    Bin da grad bisserl Ratlos...

    Lg

    EDIT:

    Könnte das evtl. an der Fill-Methode liegen?

    VB.NET-Quellcode

    1. Me.Tab_FirmenTableAdapter.Fill_Firma1(Me.DBSysDataSet.Tab_Firmen, tstb_SucheFirma.Text, SF_Wert)


    Wie gesagt, im DGV sind Werte vorhanden...
    hast wie immer recht... habs jetzt so gemacht... :)

    VB.NET-Quellcode

    1. Private Sub FirmenNachExcelExportierenToolStripMenuItem_Click(sender As System.Object, e As System.EventArgs) Handles FirmenNachExcelExportierenToolStripMenuItem.Click
    2. DataTableExportExcel.ExportToExcel1(DBSysDataSet.Tab_Firmen)


    VB.NET-Quellcode

    1. Module DataTableExportExcel
    2. Friend Sub ExportToExcel1(ByVal Table As DataTable)
    3. Dim myExcel As New Microsoft.Office.Interop.Excel.Application
    4. Try
    5. ' Excel.Application
    6. myExcel.Application.Workbooks.Add()
    7. myExcel.Visible = True
    8. Dim myColumn As DataColumn
    9. Dim colIndex As Integer
    10. Dim rowIndex As Integer
    11. For Each myColumn In Table.Columns
    12. colIndex += 1
    13. myExcel.Cells(1, colIndex) = myColumn.ColumnName
    14. Next
    15. Dim myRow As DataRow
    16. rowIndex = 1
    17. For Each myRow In Table.Rows
    18. rowIndex += 1
    19. colIndex = 0
    20. Dim myColumn2 As DataColumn
    21. For Each myColumn2 In Table.Columns
    22. colIndex += 1
    23. myExcel.Cells(rowIndex, colIndex) = myRow( _
    24. myColumn2.ColumnName).ToString()
    25. Next myColumn2
    26. Next myRow
    27. MsgBox("Der Export nach Excel wurde erfolgreich beendet!", _
    28. MsgBoxStyle.Information)
    29. Catch ex As Exception
    30. MsgBox(ex.Message)
    31. End Try
    32. End Sub
    33. End Module


    so funktionierts... Danke !!!! ... hast mich auf den Richtigen Weg gebracht... Danke!

    Lg