Installierbares ISAM nicht gefunden - Excel 2013

  • VB.NET

Es gibt 7 Antworten in diesem Thema. Der letzte Beitrag () ist von ErfinderDesRades.

    Installierbares ISAM nicht gefunden - Excel 2013

    Moin liebe VB Gemeinde :)

    Ich hab ein kurzen Anliegen... Ich möchte eine xlsx Datei in ein DataSet einlesen. Jedoch bekomme ich den Fehler:
    Installierbares ISAM nicht gefunden

    Hier mein Code:

    VB.NET-Quellcode

    1. Dim Command_Excel As System.Data.OleDb.OleDbDataAdapter
    2. Dim Connect_Excel As System.Data.OleDb.OleDbConnection
    3. Connect_Excel = New System.Data.OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=Y:\EDV\Peschel\VB\CROSS_Bestände\de_pvu_vnwbestand.xlsx;Extended Properties=Excel 12.0 Xml;HDR=YES;")
    4. Command_Excel = New System.Data.OleDb.OleDbDataAdapter("select * from [de_pvu_vnwbestand$]", Connect_Excel)
    5. Command_Excel.Fill(DS)
    6. Connect_Excel.Close()


    Liegt es am Provider oder an den Extendet Properties?

    Ich hoffe, es kann mir jemand helfen ?(

    Schönen Tag euch allen

    commander schrieb:

    Connect_Excel = New System.Data.OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=Y:\EDV\Peschel\VB\CROSS_Bestände\de_pvu_vnwbestand.xlsx;Extended Properties=Excel 12.0 Xml;HDR=YES;")
    Wenn du mehrere Extended Properties hast, musst du sie gruppieren:

    Visual Basic-Quellcode

    1. Connect_Excel = New System.Data.OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=Y:\EDV\Peschel\VB\CROSS_Bestände\de_pvu_vnwbestand.xlsx;Extended Properties=""Excel 12.0 Xml;HDR=YES"";"
    --
    If Not Program.isWorking Then Code.Debug Else Code.DoNotTouch
    --
    Ok.. danke :)

    Weißt du, oder jemand anderes vielleicht, warum der Update Command nicht funktioniert?

    VB.NET-Quellcode

    1. Dim Adapter_Excel As System.Data.OleDb.OleDbDataAdapter
    2. Dim Connect_Excel As System.Data.OleDb.OleDbConnection
    3. Connect_Excel = New System.Data.OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=Y:\EDV\Peschel\VB\CROSS_Bestände\de_pvu_vnwbestand.xlsx; Extended Properties=Excel 12.0;")
    4. Adapter_Excel = New System.Data.OleDb.OleDbDataAdapter("select * from [de_pvu_vnwbestand$] order by Betrieb, Aktnummer", Connect_Excel)
    5. Adapter_Excel.Fill(DS)
    6. DT = DS.Tables(0)
    7. DT.Columns.Add("ID").SetOrdinal(0)
    8. For Each row As DataRow In DT.Rows
    9. If aktnummer = row.Item(1) And Betrieb = row.Item(14) Then
    10. row.Delete()
    11. Else
    12. i = i + 1
    13. row.Item(0) = i
    14. aktnummer = row.Item(1)
    15. Betrieb = row.Item(14)
    16. End If
    17. Next
    18. DT.PrimaryKey = New DataColumn() {DT.Columns("ID")}
    19. dgv.DataSource = DT
    20. Dim builder As OleDbCommandBuilder = New OleDbCommandBuilder(Adapter_Excel)
    21. Adapter_Excel.Update(DT)
    22. Connect_Excel.Close()


    Ich erhalte den Fehler:
    Dynamische SQL-Generierung für den UpdateCommand wird nicht für einen SelectCommand unterstützt, der keine Schlüsselspalteninformationen zurückgibt.

    Einen Primärschlüssel geben ich doch an ( Spalte ID )