Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

When use subtotal function with Epplus, I get "Excel found unreadable content in..." error

Tags:

c#

asp.net

epplus

I have a simple Excel document generated by Epplus library in my web page; however when I use the excel function "subtotal", I get the following error:

Excel found unreadable content in...

Here is the code:

protected void Page_Load(object sender, EventArgs e)
{
   ExcelPackage pck = new ExcelPackage();
   ExcelWorksheet ws = pck.Workbook.Worksheets.Add("hoja1");

   ws.Cells["A1"].Value = 1;
   ws.Cells["A2"].Value = 2;
   ws.Cells["A3"].Value = 3;
   ws.Cells["A1:A3"].Style.Numberformat.Format = "#,##0";

   ws.Cells["A4"].Formula= "SUBTOTAL(9;A1:A3)";

   Response.Clear();
   Response.AddHeader("content-disposition", 
        string.Format("attachment;filename=\"{0}\"", "Reporte.xlsx"));
   Response.ContentType = 
        "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
   Response.BinaryWrite(pck.GetAsByteArray());
   Response.End();
}

And xml document wiht detail:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<recoveryLog xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main">
   <logFileName>error057400_01.xml</logFileName>
   <summary>
      Se han detectado errores en el archivo "C:\xxxxxx\Content.IE5\MAW7NL0X\Reporte.xlsx"
   </summary>
   <removedRecords summary="Lista de registros eliminados:">
      <removedRecord>
          Registros quitados: Fórmula de /xl/worksheets/sheet1.xml parte
      </removedRecord>
</removedRecords></recoveryLog>

Note: If I switch to using the following function, everything works fine. Why doesnt my Subtotal work?

ws.Cells["A4"].Formula= "SUM(A1:A3)";
like image 936
Luis E. V. Avatar asked Jan 26 '13 03:01

Luis E. V.


1 Answers

Not sure if this is the issue or not, but try replacing the ";" with a ",":

ws.Cells["A4"].Formula= "SUBTOTAL(9,A1:A3)";

Good luck.

like image 115
sgeddes Avatar answered Oct 03 '22 21:10

sgeddes