将datagridview中的数据导出到excel中。
public void print(DataGridView dataGridView1) { //导出到execl //try //{ //没有数据的话就不往下执行 if (dataGridView1.Rows.Count == 0) return; //实例化一个Excel.Application对象 Excel.Application excel = new Excel.Application(); //让后台执行设置为不可见,为true的话会看到打开一个Excel,然后数据在往里写 //新增加一个工作簿,Workbook是直接保存,不会弹出保存对话框,加上Application会弹出保存对话框,值为false会报错 excel.Application.Workbooks.Add(true); //生成Excel中列头名称 for (int i = 0; i < dataGridView1.Columns.Count; i++) { excel.Cells[1, i + 1] = dataGridView1.Columns[i].HeaderText; } //把DataGridView当前页的数据保存在Excel中 for (int i = 0; i < dataGridView1.Rows.Count; i++) { for (int j = 1; j < dataGridView1.Columns.Count; j++) { if (dataGridView1[j, i].ValueType == typeof(string)) { excel.Cells[i + 2, j + 1] = "'" + dataGridView1[j, i].Value.ToString(); } else { excel.Cells[i + 2, j + 1] = dataGridView1[j, i].Value.ToString(); } } } //设置禁止弹出保存和覆盖的询问提示框 Worksheet worksheet = (Worksheet)excel.ActiveSheet; worksheet.Columns.AutoFit(); //不可见,即后台处理 excel.Visible = true; //确保Excel进程关闭 excel.Quit(); excel = null; //} //catch (Exception ex) //{ // MessageBox.Show(ex.Message, "错误提示"); //} } private void button1_Click(object sender, EventArgs e) { print(dataGridView1); }