C# 怎么导出dataGridView中的值到Excel

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

在系统应用过程中,数据是系统的核心。如果直接在应用软件中看数据,有时也有些不便,所以就会把系统数据转换成Excel格式,便于处理。下面小编将在VS2010中将dataGridView导出为Excel中。

工具/原料

 
  • 电脑 VS2010

方法/步骤

 
  1.  

    添加Office Excel引用,在.net下面。

  2.  

    程序代码引用:using Excel = Microsoft.Office.Interop.Excel;

  3.  

    添加事件控件“导出Excel”

  4.  

    双击“导出Excel”空间添加代码:

    private void button2_Click(object sender, EventArgs e)

    {

    string fileName = "";

    string saveFileName = "";

    SaveFileDialog saveDialog = new SaveFileDialog();

    saveDialog.DefaultExt = "xls";

    saveDialog.Filter = "Excel文件|*.xls";

    saveDialog.FileName = fileName;

    saveDialog.ShowDialog();

    saveFileName = saveDialog.FileName;

    if (saveFileName.IndexOf(":") < 0) return; //被点了取消

    Microsoft.Office.Interop.Excel.Application xlApp = new Microsoft.Office.Interop.Excel.Application();

    if (xlApp == null)

    {

    MessageBox.Show("无法创建Excel对象,您的电脑可能未安装Excel");

    return;

    }

    Microsoft.Office.Interop.Excel.Workbooks workbooks = xlApp.Workbooks;

    Microsoft.Office.Interop.Excel.Workbook workbook = workbooks.Add(Microsoft.Office.Interop.Excel.XlWBATemplate.xlWBATWorksheet);

    Microsoft.Office.Interop.Excel.Worksheet worksheet = (Microsoft.Office.Interop.Excel.Worksheet)workbook.Worksheets[1];//取得sheet1

    //写入标题

    for (int i = 0; i < dataGridView1.ColumnCount; i++)

    {worksheet.Cells[1, i + 1] = dataGridView1.Columns[i].HeaderText;}

    //写入数值

    for (int r = 0; r < dataGridView1.Rows.Count; r++)

    { for (int i = 0; i < dataGridView1.ColumnCount; i++)

    {

    worksheet.Cells[r + 2, i + 1] = dataGridView1.Rows[r].Cells[i].Value;

    }

    System.Windows.Forms.Application.DoEvents();

    }

    worksheet.Columns.EntireColumn.AutoFit();//列宽自适应

    MessageBox.Show(fileName + "资料保存成功", "提示", MessageBoxButtons.OK);

    if (saveFileName != "")

    {

    try

    {workbook.Saved = true;

    workbook.SaveCopyAs(saveFileName);  //fileSaved = true;

    }

    catch (Exception ex)

    {//fileSaved = false;

    MessageBox.Show("导出文件时出错,文件可能正被打开!\n" + ex.Message);

    }

    }

    xlApp.Quit();

    GC.Collect();//强行销毁           }

    }

  5.  

    重新生成“解决方案”后测试。

  6.  

    通过以上,成功的将datagridview中的值导出到excel中了。

最新文章

  1. Could not load file or assembly &#39;System.ServiceModel.DomainServices.Hosting&#39;.系统找不到指定文件
  2. MVC学习笔记---MVC生命周期及管道
  3. HDU5730 FFT+CDQ分治
  4. java.lang.ClassCastException: sun.jdbc.odbc.JdbcOdbcStatement cannot be cast to java.beans.Statement
  5. 学习笔记_Java_day13_JSTL_自定义标签库(9)
  6. centos 6.5 openfire安装
  7. HttpContext.Current.Cache 和 HttpRuntime.Cache 区别
  8. 使用git微命令深入理解git工作机制
  9. DOM4J介绍与代码示例(2)-XPath 详解
  10. yaml在python中的应用简单整理
  11. FEX(Fabric Extender)
  12. static属性和方法
  13. C#基础加强(2)之密闭类、静态类及扩展方法
  14. 搭建ssh框架项目(四)
  15. POJ-3278.CatchThatCow(数字BFS最短路输出)
  16. mysql delimiter的说明
  17. lambda表达式学习
  18. >CH07-cubemap
  19. struts2框架 转载 精华帖
  20. 完美配置Python3.5+Anaconda+PyQt5,实现UI和其他模块的结合

热门文章

  1. 【linux基础】cuDNN版本查询
  2. 超级简单的数据压缩算法—LZW算法
  3. PC timeline
  4. Go Example--strings
  5. [转]vs2010用 boost.python 编译c++类库 供python调用
  6. nginx+keeplived+tomcat
  7. delphi字符串分割
  8. Hash 1.04 右键
  9. phpcms调用语句
  10. Vue 双向数据绑定、事件介绍以及ref获取dom节点