Quantcast
Channel: EPPlus Issue Tracker Rss Feed
Viewing all articles
Browse latest Browse all 2262

Edited Unassigned: Cannot save workbook containing a chart sheet [15287]

$
0
0
Hi,

When I try to save my workbook, I get following exeption:

> System.InvalidOperationException was unhandled
> HResult=-2146233079
> Message=Error saving file C:\Test.xlsx
> Source=EPPlus
> StackTrace:
> at OfficeOpenXml.ExcelPackage.Save()
> at OfficeOpenXml.ExcelPackage.SaveAs(FileInfo file)
> at LoadTestReportingToolkit.Analyzer.Program.Main(String[] args) in c:\Development\LoadTestReportingToolkit\LoadTestReportingToolkit.Analyzer\Program.cs:line 64
> at System.AppDomain._nExecuteAssembly(RuntimeAssembly assembly, String[] args)
> at System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args)
> at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
> at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
> at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
> at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
> at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
> at System.Threading.ThreadHelper.ThreadStart()
> InnerException: System.NotSupportedException
> HResult=-2146233067
> Message=This property or method is not supported for a Chartsheet
> Source=EPPlus
> StackTrace:
> at OfficeOpenXml.ExcelWorksheet.CheckSheetType()
> at OfficeOpenXml.ExcelWorksheet.get_Tables()
> at OfficeOpenXml.ExcelWorkbook.ReadAllTables()
> at OfficeOpenXml.ExcelWorksheet.get_Tables()
> at OfficeOpenXml.ExcelWorksheet.SaveTables()
> at OfficeOpenXml.ExcelWorksheet.Save()
> at OfficeOpenXml.ExcelWorkbook.Save()
> at OfficeOpenXml.ExcelPackage.Save()


Following is the code which I used for tetsing:

```
using (var package = new ExcelPackage())
{
var durationChart = package.Workbook.Worksheets.AddChart("Duration", eChartType.Line);
var countChart = package.Workbook.Worksheets.AddChart("Counts", eChartType.Line);

var durationSheet = package.Workbook.Worksheets.Add("Duration-Data");
var countsSheet = package.Workbook.Worksheets.Add("Counts-Data");

var dt = new DataTable();
dt.Columns.Add("Users");
dt.Columns.Add("Value1", typeof(int));
dt.Columns.Add("Value2", typeof(int));
dt.Rows.Add(10, 5, 7);
dt.Rows.Add(20, 6, 8);
dt.Rows.Add(30, 7, 8);
dt.Rows.Add(40, 8, 9);
dt.Rows.Add(50, 3, 2);
dt.Rows.Add(60, 4, 1);
dt.Rows.Add(70, 5, 3);
dt.Rows.Add(80, 6, 2);
dt.Rows.Add(90, 7, 5);
dt.Rows.Add(100, 6, 6);

var ct = new DataTable();
ct.Columns.Add("Users");
ct.Columns.Add("Value1", typeof(int));
ct.Columns.Add("Value2", typeof(int));
ct.Rows.Add(10, 1, 2);
ct.Rows.Add(20, 2, 1);
ct.Rows.Add(30, 2, 3);
ct.Rows.Add(40, 3, 4);
ct.Rows.Add(50, 4, 5);
ct.Rows.Add(60, 6, 4);
ct.Rows.Add(70, 3, 8);
ct.Rows.Add(80, 6, 5);
ct.Rows.Add(90, 3, 2);
ct.Rows.Add(100, 1, 9);

durationSheet.Cells["A1"].LoadFromDataTable(dt, true);
countsSheet.Cells["A1"].LoadFromDataTable(ct, true);

durationChart.Chart.Series.Add(durationSheet.Cells[1, 1, 11, 1], durationSheet.Cells[1, 2, 11, 2]);
countChart.Chart.Series.Add(countsSheet.Cells[1, 1, 11, 1], durationSheet.Cells[1, 3, 11, 3]);

package.SaveAs(new FileInfo(@"C:\Test.xlsx"));
}
```

Did I miss anything? Thanks in advance!

Viewing all articles
Browse latest Browse all 2262

Trending Articles