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中了。

C# 导出dataGridView中的值到Excel的更多相关文章

  1. C#读取Excel表格数据到DataGridView中和导出DataGridView中的数据到Excel

    其实想在datagridview中显示excel表格中的数据跟读取数据库中的数据没什么差别,只不过是创建数据库连接的时候连接字段稍有差别. private void btnShow_Click(obj ...

  2. 导出网页中的table到excel

    导出网页中的table到excel的两种简便方法: 1. 纯 JavaScript 方法,缺点只支持IE浏览器 var elTable = document.getElementById(" ...

  3. javscript 导出html中的table到excel

    <script language="JavaScript" type="text/javascript"> /* * 默认转换实现函数,如果需要其他 ...

  4. ASP.NET 导出gridview中的数据到Excel表中,并对指定单元格换行操作

    1. 使用NPOI读取及生成excel表. (1)导出Click事件: 获取DataTable; 给文件加文件名: string xlsxName = "xxx_" + DateT ...

  5. c#导出ListView中的数据到Excel表格

    1.添加组件:Microsoft.Office.Interop.Excel 步骤:右键点击“引用”--->添加引用--->COM--->Microsoft.Office.Intero ...

  6. JS 导出网页中Table内容到excel

    <html> <head> <script type="text/javascript" language="javascript" ...

  7. EXT中导出表格中的数据到Excel

    { itemId: 'excel', text: '导出', iconCls: 'btnExportExcel', disabled: false, handler: function () { // ...

  8. 将listBox中信息显示在dataGridview中,操作datagridview后删除listBox信息和SQL数据库信息 续(浅谈listBox..)

    应用场景      对datagridview控件使用了解,以及操作datagridview选中的信息删除,并且有二次确认后才删除用户信息.相应的删除listbox中用户信息,下面一起看看需要哪些准备 ...

  9. C#在dataGridView中遍历,寻找相同的数据并定位

      1. C#在dataGridView中遍历,寻找相同的数据并定位   [c-sharp] view plain copy int row = dataGridView1.Rows.Count;// ...

随机推荐

  1. Error: No EPCS layout data - looking for section [EPCS-C84018]

    /********************************************************************** * Error: No EPCS layout data ...

  2. supervisord.conf

    ; Sample supervisor config file.;; For more information on the config file, please see:; http://supe ...

  3. cordova文件传输系统插件使用:cordova-plugin-file-transfer

    1. 添加插件:cordova plugin add cordova-plugin-file-transfer 2. 调用方法: var fileTransfer = new FileTransfer ...

  4. 第三章泛型集合ArrayList 和Hashtable

    第三章泛型集集合 ArrayList 变量名 = new ArrayList();  //相当与一个容器 他的执行using 是  using System.Collections; 变量名.ADD( ...

  5. Netty学习记录

    一.Netty简介 Netty 是一个基于 JAVA NIO 类库的异步通信框架,它的架构特点是:异步非阻塞.基于事件驱动.高性能.高可靠性和高可定制性. Netty 是一个 NIO client-s ...

  6. 修改postgres密码

    转载自:https://www.cnblogs.com/kaituorensheng/p/4735191.html   1. 修改PostgreSQL数据库默认用户postgres的密码 Postgr ...

  7. Spring+SpringMVC+Mybatis+Maven+CXF+WebService整合之服务端

    WebService服务端项目结构: <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="h ...

  8. 上线啦,PP.io!

    经过我们PPIO团队成员们在20天零13小时零14分的辛勤努力下,我们的官网终于上线了!   是的,14年前我们就是东半球第一个P2P技术团队.我们的征程始于2004年春天一个温暖的午后.寝室里笨拙的 ...

  9. 简谈OSI七层模型(网络层)

    七层模型,亦称OSI(Open System Interconnection)参考模型,是参考模型是国际标准化组织(ISO)制定的一个用于计算机或通信系统间互联的标准体系. 它是一个七层的.抽象的模型 ...

  10. NoSql图形数据库

    NoSQL数据库可以按照它们的数据模型分成4类: 键-值存储库(Key-Value-stores); BigTable实现(BigTable-implementations); 文档库(Documen ...