Hallo Miteinander.
Ich lade Speichere das Datagridview mit diesem Code in ein Excel file:
Und mit diesem Code lese ich es wieder ein:
Jedoch Funktioniert das einlesen nicht wirklich, da er einen Fehler ausgiebt:
OleDbException wurde nicht behandelt.
"Die externe Tabelle hat nicht das erwartete Format."
Zeile: MyCommand.Fill(DtSet)
Kann mir jemand helfen?
Ich lade Speichere das Datagridview mit diesem Code in ein Excel file:
VB.NET-Quellcode
- If System.IO.File.Exists("Pfad") Then
- Kill("pfad")
- End If
- Dim xls_Appl As Excel.Application ' Excel Anwendung
- Dim xls_Mappe As Excel.Workbook ' Excel Arbeitsmappe
- Dim xls_Blatt As Excel.Worksheet ' Excel Blatt (Tabelle)
- Dim Anzahlzeilen As Integer
- xls_Appl = New Excel.Application() ' Excel Instanz bilden
- xls_Appl.Visible = False
- xls_Mappe = xls_Appl.Workbooks.Add()
- xls_Blatt = xls_Mappe.ActiveSheet
- With bestellen.DataGridView1
- For Spalte As Integer = 0 To .Columns.Count - 1
- xls_Blatt.Cells(1, Spalte + 1).Value = .Columns(Spalte).HeaderText
- xls_Blatt.Cells(1, Spalte + 1).Font.Bold = True
- Next
- Anzahlzeilen = .Rows.Count
- If .AllowUserToAddRows = True Then
- Anzahlzeilen = Anzahlzeilen - 1 ' Leerzeile abziehen
- End If
- For Zeile As Integer = 0 To Anzahlzeilen - 1
- For Spalte As Integer = 0 To .Columns.Count - 1
- xls_Blatt.Cells(Zeile + 2, Spalte + 1).Value() _
- = .Rows(Zeile).Cells(Spalte).Value()
- Next
- Next
- End With
- Dim Datum As Date = Date.Now.Date
- xls_Appl.DisplayAlerts = False 'vor dem Speichern - vermeidet eventuelle Dialoge
- xls_Mappe.SaveAs("pfad")
- xls_Appl.Quit()
- Close()
Und mit diesem Code lese ich es wieder ein:
VB.NET-Quellcode
- Try
- Dim MyConnection As System.Data.OleDb.OleDbConnection
- Dim DtSet As System.Data.DataSet
- Dim MyCommand As System.Data.OleDb.OleDbDataAdapter
- MyConnection = New System.Data.OleDb.OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0;Data Source='" & TextBox1.Text & "';Extended Properties=Excel 8.0;")
- MyCommand = New System.Data.OleDb.OleDbDataAdapter("select * from [Tabelle1]", MyConnection)
- MyCommand.TableMappings.Add("Table", "Net-informations.com")
- DtSet = New System.Data.DataSet
- MyCommand.Fill(DtSet)
- DataGridView2.DataSource = DtSet.Tables(0)
- MyConnection.Close()
- Catch
- End Try
Jedoch Funktioniert das einlesen nicht wirklich, da er einen Fehler ausgiebt:
OleDbException wurde nicht behandelt.
"Die externe Tabelle hat nicht das erwartete Format."
Zeile: MyCommand.Fill(DtSet)
Kann mir jemand helfen?