none
Aus der App-Entwickler-Hotline: Fehler beim Zugriff auf Excel über OleDB RRS feed

Alle Antworten

  • Hallo zusammen,

    Option 3 (IMHO aber die erste Wahl, wenn es sich um Exceldateien älteren Formats (also .xls) handelt und keine sonstigen Gründe dagegen sprechen) wäre die Umstellung der Kompilierung auf x86 (32 Bit), dann klappt es in der Regel auch mit Jet. Der ConnectionString sieht dann dabei dann so aus:

    Dim connectionString
        connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="" § Dateiname § \"";Extended Properties=""Excel 8.0;HDR=YES\"""
    conn = New OleDb.OleDbConnection(connectionString)

    Man umgeht damit die Probleme, die bei einer Vermischung von 32 und 64 Bit (OS vs. Office) auftreten, ACE muss nämlich dann in der passenden Variante installiert werden, was u.U. dann aber auch Probleme mit sich bringt und bei der 32 Bit Variante auch bedeutet, dass man die Anwendung ebenfalls als x86 kompilieren muss.)

    Wenn man mit .xlsx oder .accdb arbeiten muss, geht es mit Jet leider nicht.

    ---

    @raulliubo: In deinem Beispiel ist der ConnectionString auch falsch^^. Steht Provide=..., müsste aber Provider=... heißen.


    Gruß, Stefan
    Microsoft MVP - Visual Developer ASP/ASP.NET
    http://www.asp-solutions.de/ - Consulting, Development
    http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community

    Freitag, 6. Dezember 2013 14:12
    Moderator