【发布时间】:2018-04-11 17:36:26
【问题描述】:
我需要帮助从 datagridview 列和标题导出数据,下面我将添加我用于从 datagridview 导出到 excel 的代码,它可以将所有数据从 datagridview 发送到 excel 表唯一问题是标题没有被发送到工作表。你们能帮忙解决我需要在此处添加的那部分内容,以便标题也显示在工作表中。
private void ImportDataGridViewDataToExcelSheet()
{
string userID = WindowsIdentity.GetCurrent().Name;
var userName = userID.Remove(0, 15);
//test.Text = userName;
//dataGridView_ShowAllData
Excel.Application xlApp;
Excel.Workbook xlWorkBook;
Excel.Worksheet xlWorkSheet;
object misValue = System.Reflection.Missing.Value;
Int16 i, j;
xlApp = new Excel.Application();
xlWorkBook = xlApp.Workbooks.Add(misValue);
xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1);
for (i = 0; i <= dataGridView_ShowAllData.RowCount - 2; i++)
{
for (j = 0; j <= dataGridView_ShowAllData.ColumnCount - 1; j++)
{
xlWorkSheet.Cells[i + 1, j + 1] = dataGridView_ShowAllData[j, i].Value.ToString();
}
}
xlWorkBook.SaveAs(@"C:\Users\" + userName + "\\Downloads\\ReportView.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);
}
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();
}
}
private void toolStripMenuItem_ImportDGVToExcel_Click(object sender, EventArgs e)
{
ImportDataGridViewDataToExcelSheet();
}
【问题讨论】:
-
没关系,我已经解决了,谢谢。
-
如果您解决了问题,请发布您自己的答案 - 或删除问题。不要让它保持在当前状态
-
没问题,我会提供解决方案,谢谢。
标签: excel winforms c#-4.0 datagridview