2011-09-12 12 views
1

私はそれが良い動作しますが、問題はのDataGridView headertextをエクスポートすることができないというイムある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); 

をExcelファイルにDataGridViewの行をエクスポートし、このコードをビルドします。誰でも助けてくれますか?

+0

また、datagridviewヘッダーテキストを渡すコードも投稿できます。私は同じ問題を抱えており、それを理解できません。 –

答えて

3

は、あなたのメインループの前にループを行い、このような何か:

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

とcolNameにの値にワークシートの行(0)または(1)、j列をエクセルにヘッダを設定します。

関連する問題