다음 코드는 단일 Excel 파일과 단일 시트 만 생성하는 데 효과적입니다.
내가 생성 할 separate sheets
모든을 위해 CustomerOrders
내가 할 수있는 방법?
List<MyData> Data = //code to get list of data
DataTable reportDataTable = new DataTable();
reportDataTable.Columns.Add("no");
reportDataTable.Columns.Add("Code");
int count =0
if (Data != null)
{
foreach (MyData dataobj in Data)
{
count++;
foreach (var innerdata in dataobj.CustomerData.OrderBy(t => t.Number))
{
foreach (var orderobj in dataobj.CustomerOrders)
{
DataRow row = reportDataTable.NewRow();
row[0] = "No";
row[1] = "Code"+count;
reportDataTable.Rows.Add(row);
}
}
}
}
GridView grid = new GridView();
grid.DataSource = reportDataTable;
grid.DataBind();
return new DownloadFileResult(grid, "MYEXCELFILE.xls");
public DownloadFileResult(GridView gv, string FileName)
{
GridView = gv; // property
fileName = FileName; //property
}
하나의 MYEXCELFILE.xls
파일에 여러 시트를 어떻게 생성 합니까?
For above i have used following link code
http://www.codeproject.com/Articles/325103/MVC-Grid-to-Excel-file-download
이 소스 코드를 시도하십시오.
//Create an instance of the object that generates the Excel file
ExcelDocument xls = new ExcelDocument();
//Loop for each CustomerOrders
{
//Add an worksheet for each CustomerOrders sheet
ExcelWorksheet xlsSheet = new ExcelWorksheet();
xlsSheet.setSheetName("CustomerOrders #no");
xls.easy_addWorksheet(xlsSheet);
//Create a dataset that contains the gridview datatable
DataSet dataSet = new DataSet();
dataSet.Tables.Add((DataTable)gridView.DataSource);
//Add the datatable
xlsSheet.easy_insertDataSet(dataSet, "A1", true);
}
//Export Excel file
xls.easy_WriteXLSFile("MYEXCELFILE.xls ");
셀 형식을 지정하려면 다음 링크를 참조하십시오. http://www.easyxls.com/manual/FAQ/export-gridview-to-excel.html
이 코드는 EasyXLS 라이브러리를 사용하여 Excel 파일을 생성합니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다