J'essaie d'ouvrir un document Excel en utilisant la référence/le package EPPlus. Je n'arrive pas à ouvrir l'application Excel. Quel code me manque?
protected void BtnTest_Click(object sender, EventArgs e)
{
FileInfo newFile = new FileInfo("C:\\Users\\Scott.Atkinson\\Desktop\\Book.xls");
ExcelPackage pck = new ExcelPackage(newFile);
//Add the Content sheet
var ws = pck.Workbook.Worksheets.Add("Content");
ws.View.ShowGridLines = false;
ws.Column(4).OutlineLevel = 1;
ws.Column(4).Collapsed = true;
ws.Column(5).OutlineLevel = 1;
ws.Column(5).Collapsed = true;
ws.OutLineSummaryRight = true;
//Headers
ws.Cells["B1"].Value = "Name";
ws.Cells["C1"].Value = "Size";
ws.Cells["D1"].Value = "Created";
ws.Cells["E1"].Value = "Last modified";
ws.Cells["B1:E1"].Style.Font.Bold = true;
}
J'ai essayé pck.open(newFile);
, mais cela ne le permet pas ...
Essaye ça:
protected void BtnTest_Click(object sender, EventArgs e)
{
FileInfo newFile = new FileInfo("C:\\Users\\Scott.Atkinson\\Desktop\\Book.xls");
ExcelPackage pck = new ExcelPackage(newFile);
//Add the Content sheet
var ws = pck.Workbook.Worksheets.Add("Content");
ws.View.ShowGridLines = false;
ws.Column(4).OutlineLevel = 1;
ws.Column(4).Collapsed = true;
ws.Column(5).OutlineLevel = 1;
ws.Column(5).Collapsed = true;
ws.OutLineSummaryRight = true;
//Headers
ws.Cells["B1"].Value = "Name";
ws.Cells["C1"].Value = "Size";
ws.Cells["D1"].Value = "Created";
ws.Cells["E1"].Value = "Last modified";
ws.Cells["B1:E1"].Style.Font.Bold = true;
pck.Save();
System.Diagnostics.Process.Start("C:\\Users\\Scott.Atkinson\\Desktop\\Book.xls");
}
J'espère que cela t'aides!
Essayez ceci dans ASP NET Core pour éviter l'exception win32:
private void CreateWorkbook(string fileName)
{
using (var p = new ExcelPackage())
{
p.Workbook.Properties.Author = "Barry Guvenkaya";
p.Workbook.Properties.Title = "MyTitle";
p.Workbook.Worksheets.Add("MySheet");
var bin = p.GetAsByteArray();
File.WriteAllBytes(fileName, bin);
// Below code opens the Excel doc
var proc = new Process();
proc.StartInfo = new ProcessStartInfo(fileName)
{
UseShellExecute = true
};
proc.Start();
}
}