2011-09-12 48 views
1

我建立這個代碼出口datagridview的行成Excel文件C#的WinForms DataGridView的列標題文本

Excel.Application xlApp ; 
Excel.Workbook xlWorkBook ; 
Excel.Worksheet xlWorkSheet ; 
object misValue = System.Reflection.Missing.Value; 

xlApp = new Excel.ApplicationClass(); 
xlWorkBook = xlApp.Workbooks.Add(misValue); 
xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1); 
int i = 0; 
int j = 0; 

for (i = 0; i <= dgvInventory.RowCount - 1; i++) 
{ 
    for (j = 0; j <= dgvInventory.ColumnCount - 1; j++) 
    { 
     DataGridViewCell cell = dgvInventory[j, i]; 
     xlWorkSheet.Cells[i + 1, j + 1] = cell.Value; 
    } 
} 

xlWorkBook.SaveAs(
    "D:\\exp.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); 
releaseObject(xlWorkBook); 
releaseObject(xlApp); 

它的作品不錯,但問題是,即時通訊無法出口的datagridview HEADERTEXT。誰能幫我?

+0

你可以發佈你的代碼,也可以通過datagridview頭文本以優秀。我有同樣的問題,不能弄清楚。 – 2011-09-13 19:35:50

回答

3

主循環前做一個循環,這樣的事情:

for (int j = 0; j <= this.dataGridView1.ColumnCount - 1; j++) 
    { 
     string colName = dataGridView1.Columns[j].HeaderText; 
    } 

,並設置標題,Excel工作表行(0)或(1),第j列到COLNAME的價值。

相關問題