[英]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.