2010-09-08 1 views
0

У меня есть задача сбрасывать данные набора данных в Excel WorkBook. Предположим, если у вас несколько таблиц, тогда мне нужно создать больше рабочих таблиц динамически. Для этого я сделал небольшое приложение. Но я был уверен, что не создал WorkSheets.Could Ниже приведен кодКак сбрасывать данные в ExcelWorkBook?

private void btn_export2excel_Click(object sender, EventArgs e) 
{ 
    DataSet ds = new DataSet(); 
    ds.Tables.Add("Categories"); 
    ds.Tables.Add("Employee"); 

    try 
    { 
    Excel.Application xlApp; 
    Excel.Workbook xlWorkBook; 
    Excel.Worksheet[] xlWorkSheet = new Excel.Worksheet[2]; 
    object misValue = System.Reflection.Missing.Value; 
    xlApp = new Excel.Application(); 
    xlWorkBook = xlApp.Workbooks.Add(misValue); 
    xlWorkSheet[0] = (Excel.Worksheet) xlWorkBook.Worksheets.get_Item(1); 
    xlWorkSheet[1] = (Excel.Worksheet) xlWorkBook.Worksheets.get_Item(1); 
    xlWorkSheet[0].Cells[1, 1] = "www.google.com"; 
    xlWorkSheet[1].Cells[1, 1] = "www.yahoo.com"; 
    xlWorkBook.SaveAs("Sample.xls", Excel.XlFileFormat.xlWorkbookNormal, misValue, misValue, misValue, misValue, 
         Excel.XlSaveAsAccessMode.xlExclusive, misValue, misValue, misValue, misValue, misValue); 
    xlWorkBook.Close(true, misValue, misValue); 
    xlApp.Quit(); 
    releaseObject(xlWorkSheet[0]); 
    releaseObject(xlWorkSheet[1]); 
    releaseObject(xlWorkBook); 
    releaseObject(xlApp); 
    } 
    catch (Exception ex) 
    { 
    MessageBox.Show(ex.Message, "Message from form"); 
    } 
    finally 
    { 
    GC.Collect(); 
    } 
} 

private void releaseObject(object obj) 
{ 
    try 
    { 
    System.Runtime.InteropServices.Marshal.ReleaseComObject(obj); 
    obj = null; 
    } 
    catch (Exception ex) 
    { 
    obj = null; 
    MessageBox.Show("Exception Occured while releasing object " + ex.ToString()); 
    } 
    finally 
    { 
    GC.Collect(); 
    } 
} 

ответ

1

Попробуйте ExportHelper. В этой статье четко объясняется, как экспортировать набор данных с несколькими таблицами в несколько листов в excel.

 Смежные вопросы

  • Нет связанных вопросов^_^