110,545
社区成员
发帖
与我相关
我的任务
分享
private string[] colName(System.Data.DataTable dt) //获取DataGridView列名
{
string colName = "";
for (int i = 0; i <= dt.Columns.Count - 1; i++)
{
colName = dt.Columns[i].ColumnName.ToString() + "|" + colName;
}
colName = colName.Substring(0, colName.LastIndexOf("|"));
string[] sColName = colName.Split(new char[] { '|' });
return sColName ;
}
Microsoft.Office.Interop.Excel.Application app = new Microsoft.Office.Interop.Excel.Application();
app.Visible = true;
Workbook wBook = (Workbook)app.Workbooks.Add(true);
Worksheet wSheet = wBook.Worksheets[1] as Worksheet;
for (int k = 0; k <= colName((System.Data.DataTable)this.dataGridView1.DataSource).Length - 1; k++)
{
wSheet.Cells[1, k + 1] = colName((System.Data.DataTable)this.dataGridView1.DataSource)[k].ToString();
}
if (((System.Data.DataTable)this.dataGridView1.DataSource).Rows.Count > 0)
{
int row, col;
row = ((System.Data.DataTable)this.dataGridView1.DataSource).Rows.Count;
col = ((System.Data.DataTable)this.dataGridView1.DataSource).Columns.Count;
for (int i = 0; i <= row - 1; i++)
{
for (int j = 0; j <= col - 1; j++)
{
wSheet.Cells[i + 2, j + 1] = ((System.Data.DataTable)this.dataGridView1.DataSource).Rows[i][j].ToString();
}
}
}
wSheet.Columns.AutoFit();
wSheet.Columns.Font.Name = "Arial";
wSheet.Columns.Font.Size = 10;
wSheet.Columns.HorizontalAlignment = Excel.XlHAlign.xlHAlignCenter;