DataGridView导出数据到Excel
来源:互联网 发布:吉他 知乎 编辑:程序博客网 时间:2024/05/05 17:08
public static void ExcelSave (DataGridView dgv) { if(dgv.RowCount<=0) { MessageBox.Show("缺少可以导出的数据!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information); return; } string saveFileName=string.Empty; SaveFileDialog sfd=new SaveFileDialog(); sfd.DefaultExt="xlsx"; sfd.Filter="Excel文件|*.xlsx"; sfd.FileName="sheet1"; sfd.ShowDialog(); saveFileName=sfd.FileName; if(saveFileName.IndexOf(".")<0) { return; } Microsoft.Office.Interop.Excel.Application myExcelApp=new Microsoft.Office.Interop.Excel.Application(); if(myExcelApp==null) { MessageBox.Show("无法创建Excel,可能您未安装Excel","提示",MessageBoxButtons.OK,MessageBoxIcon.Information); return; } Microsoft.Office.Interop.Excel.Workbooks workbooks=myExcelApp.Workbooks; Microsoft.Office.Interop.Excel.Workbook workbook=workbooks.Add(Microsoft.Office.Interop.Excel.XlWBATemplate.xlWBATWorksheet); Microsoft.Office.Interop.Excel.Sheets sheets=workbook.Worksheets; Microsoft.Office.Interop.Excel.Worksheet worksheet=(Microsoft.Office.Interop.Excel.Worksheet)sheets.get_Item(1); Microsoft.Office.Interop.Excel.Range range; object oMis=System.Reflection.Missing.Value; //显示为文本格式 range=worksheet.get_Range(worksheet.Cells[1,1],worksheet.Cells[dgv.RowCount+1,dgv.ColumnCount]); range.NumberFormatLocal="@"; //读入数据 for (int i=0; i<dgv.ColumnCount;i++ ) { worksheet.Cells [1, i+1]=dgv.Columns [i].HeaderText.ToString().Trim(); } for (int r=0; r<dgv.RowCount;r++ ) { for (int i=0; i<dgv.ColumnCount;i++ ) { worksheet.Cells [r+2, i+1]=dgv.Rows [r].Cells [i].Value.ToString().Trim(); } } range=worksheet.get_Range( worksheet.Cells [1, 1], worksheet.Cells [dgv.RowCount+1, dgv.ColumnCount] ); range.Columns.AutoFit(); range.RowHeight=18; range.HorizontalAlignment=Microsoft.Office.Interop.Excel.XlHAlign.xlHAlignLeft; //保存 if (saveFileName!=string.Empty) { try { workbook.Saved=true; workbook.SaveCopyAs( saveFileName ); } catch (Exception ex) { MessageBox.Show( "导出文件时出错,文件可能正被打开!\n"+ex.Message, "提示", MessageBoxButtons.OK, MessageBoxIcon.Information ); } } else { MessageBox.Show( "文件名不能为空", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information ); } myExcelApp.Visible=false; myExcelApp.Quit(); GC.Collect();//垃圾回收 } }
0 0
- DataGridView导出数据到Excel
- datagridview数据导出到excel
- DataGridView数据导出到Excel
- DataGridView导出数据到Excel
- 将DataGridView中的数据导出到Excel
- C# DataGridView 数据导出到Excel
- datagridview中的数据导出到excel过程
- C#datagridview导出数据到excel
- DataGridView中数据导出到Excel里
- datagridview 数据导出到excel 里面
- 导出DataGridView中数据到EXCEL中
- C#中DataGridView数据导出到Excel
- c# dataGridView导出数据到EXcel
- C# 导出DataGridView数据到Excel表
- DataGridView导出到Excel
- DataGridView导出到Excel
- DataGridView导出到Excel
- DataGridView导出到Excel
- Codeforces Round #186 (Div. 2)---D. Ilya and Roads
- 写一个函数,将输入的字符串转为整数并输出。
- java中this用法
- OpenContrail 体系架构文档
- apache common scxml框架学习DEMO
- DataGridView导出数据到Excel
- 关于javac与java命令的使用
- 【j2ee spring】19、Struts2标签如何实现For循环
- java jdbc
- struct 字节对齐详解
- 爱因斯坦的台阶
- 微信学习笔记之一(申请测试公众号)
- 【j2ee spring】20、S2SH框架中,把struts2的action交给Spring管理有什么好处?
- 不入戏的董明珠,太入戏的陈年