簡體   English   中英

將MS Excel庫添加到VS 2015 Express

[英]Adding MS Excel library to VS 2015 Express

我的電腦上安裝了VS Express 2015和MS Office 2007。 我需要從Excel工作表中讀取一些值。 我添加了Microsoft Office 12.0對象庫,但是我不能使用它

using Microsoft.Office.Interop.Excel;

我收到以下錯誤:類型或名稱空間名稱“ Interop”在名稱空間“ Microsoft.Office”中不存在(您是否缺少程序集引用?)

當您希望從Excel工作表中讀取一些值時, EPPlus是使用Excel文件的一種簡單而便捷的方法。 這是Open Office XML的包裝。

public static DataTable getDataTableFromExcel(string path)
{
    using (var pck = new OfficeOpenXml.ExcelPackage())
    {
        using (var stream = File.OpenRead(path))
        {
            pck.Load(stream);
        }
        var ws = pck.Workbook.Worksheets.First();  
        DataTable tbl = new DataTable();
        bool hasHeader = true; // adjust it accordingly( i've mentioned that this is a simple approach)
        foreach (var firstRowCell in ws.Cells[1, 1, 1, ws.Dimension.End.Column])
        {
            tbl.Columns.Add(hasHeader ? firstRowCell.Text : string.Format("Column {0}", firstRowCell.Start.Column));
        }
        var startRow = hasHeader ? 2 : 1;
        for (var rowNum = startRow; rowNum <= ws.Dimension.End.Row; rowNum++)
        {
            var wsRow = ws.Cells[rowNum, 1, rowNum, ws.Dimension.End.Column];
            var row = tbl.NewRow();
            foreach (var cell in wsRow)
            {
                row[cell.Start.Column - 1] = cell.Text;
            }
            tbl.Rows.Add(row);
        }
        return tbl;
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM