推荐使用:.net 通过NPOI 或My Xls 把DataTable 导出到Ex cel 1. #region DataGridView 数据显示到Excel 2. ///
3. /// 打开Excel 并将DataGridView 控件中数据导出到Excel 4. /// 5. ///
DataGridView 对象 6. ///
是否显示Excel 界面 7. ///
8. /// add com "Microsoft Excel 11.0 Object Library" 9. /// using Excel=Microsoft.Office.Interop.Excel; 10. /// 11. ///
12. public bool DataGridviewShowToExcel(DataGridView dgv, bool isShowExcle) 13. { 14. if (dgv.Rows.Count == 0) 15. return false; 16. //建立 Excel 对象 17. Excel.Application excel = new Excel.Application(); 18. excel.Application.Workbooks.Add(true); 19. excel.Visible = isShowExcle; 20. //生成字段名称 21. for (int i = 0; i < dgv.ColumnCount; i++) 22. { 23. excel.Cells[1, i + 1] = dgv.Columns[i].HeaderText; 24. } 25. //填充数据 26. for (int i = 0; i < dgv.RowCount - 1; i++) 27. { 28. for (int j = 0; j < dgv.ColumnCount; j++) 29. { 30. if (dgv[j, i].ValueType == typeof(string)) 31. { 32. excel.Cells[i + 2, j + 1] = "'" + dgv[j, i].Value.ToString(); 33. } 34. else 35. { 36. excel.Cells[i + 2, j + 1] = dgv[j, i].Value.ToString(); 37. } 38. } 39. } 40. return true; 41. } 42. #endregion 43. 44. #region DateGridView 导出到csv 格式的Excel 45. ///
46. /// 常用方法,列之间加\t,一行一行输出,此文件其实是csv 文件,不过默认可以当成Excel 打开。 47. /// 48. ///
49. /// using System.IO; 50. /// 51. ///
52. private void DataGridViewToExcel(DataGridView dgv) 53. { 54. SaveFileDialog dlg = new SaveFileDialog(); 55. dlg.Filter = "Execl files (*.xls)|*.xls"; 56. dlg.FilterIndex = 0; 57. dlg.RestoreDirectory = tru...