2013-06-28 27 views
7

Vì vậy, tôi bắt đầu với mã này:Excel Loại nhà cung cấp có lỗi - nó cần một hội đồng "Excel.dll"

open System 
open System.IO 
open FSharpx 
open Excel 

module ExcelManipulation = 

    type BoyICantWaitToUseThis = ExcelFile< @"C:\Users\sean.newham\Documents", "Sheet1", true> 
    let example = new BoyICantWaitToUseThis() 

... nhưng nó không biên dịch bởi vì tôi cần một "Excel.dell , Phiên bản = 2.1.0.0 ... ", tôi không biết Excel.dll là gì, vì vậy tôi đã thử bao gồm Excel Data Reader, có dll có tên là" Excel.dll ", nhưng than ôi, điều này dường như không có đã xóa thông báo lỗi.

Bất kỳ ý tưởng nào tôi cần ở đây và tôi có thể lấy nó từ đâu? Cảm ơn trước

+0

Bạn đã cài đặt văn phòng? https://github.com/fsharp/fsharpx/issues/223 – mydogisbox

+0

Tôi đã cài đặt văn phòng, nhưng tôi không thể tìm thấy một dll có tên đó trong văn phòng. – Sean

+0

và tôi đã thêm một tham chiếu đến Trình đọc dữ liệu Excel @mydogisbox. – Sean

Trả lời

5

Dường như cho đến khoảng 5 ngày trước (xem here), nhà cung cấp loại excel có sự phụ thuộc vào việc Office được cài đặt với các tệp interop văn phòng. Phiên bản mới hơn phụ thuộc vào Trình đọc dữ liệu Excel.

Nếu bạn nhìn vào yêu cầu kéo cho sự thay đổi đó here, bạn thấy rằng các nhà cung cấp loại dùng để tham chiếu

<Reference Include="Microsoft.Office.Interop.Excel, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" /> 

Xem here để được hướng dẫn về cách cài đặt đó.

Là phần thưởng bổ sung, bạn có thể xem xét các bài kiểm tra đơn vị trong liên kết đó để biết chi tiết về cách sử dụng nhà cung cấp.

+0

Tôi gặp vấn đề tương tự như OP nhưng việc cài đặt PIA không khắc phục được sự cố ... Tôi phải cài đặt các tệp PIA ở đâu? – NoIdeaHowToFixThis

+0

Trình cài đặt nên đặt chúng vào đúng vị trí. Bạn đã xác minh bạn đã cài đặt đúng phiên bản chưa? – mydogisbox

+0

Thực ra, trình cài đặt hỏi nơi cài đặt PIA. Tôi không chắc chắn nơi nó đi hoặc nơi tôi có thể chỉ môi trường của tôi đến vị trí mà tôi cài đặt PIA. – NoIdeaHowToFixThis

0

Tôi đã bị mắc kẹt tại cùng một điểm này cố gắng sử dụng FSharpx.TypeProviders.Excel. Tôi chuyển sang ExcelProvider và nó làm việc out-of-the-NuGet mở hộp:

http://fsprojects.github.io/ExcelProvider/

Các vấn đề liên quan