是否可以使用EPPlus从打开的Excel(xlsx)中读取?我希望用户能够打开Excel文档,单击“加载项”按钮并从活动工作表中读取数据。我不需要写入工作表,只能从中读取。
使用interop我能够获得打开工作簿的完整路径,但是当我尝试实际访问工作簿时,我收到了I / O错误。任何想法如何解决这个问题?
var test = ( Microsoft.Office.Interop.Excel.Workbook ) Globals.ThisAddIn.Application.ActiveWorkbook;
var test2 = test.ActiveSheet;
//var test21 = ( Microsoft.Office.Interop.Excel.Workbook ) Globals.ThisAddIn.Application.ActiveSheet;
var test3 = new FileInfo( test.FullName );
using ( ExcelPackage package = new ExcelPackage( test3) ) // <--- I/O error here
{
var worksheet = package.Workbook.Worksheets[ "Sheet1" ];
string myString = String.Format( "{0}", worksheet.Cells[ 1, 1 ].Text );
}
答案 0 :(得分:1)
尝试非独占访问,如下所示:
ht