C# DataGridView导出Excel
using Microsoft.Office.Interop.Excel;
using Excel=Microsoft.Office.Interop.Excel;
//这里Excel和Interop报错,请参考我的另一篇http://blog.csdn.net/xtfnpgy/article/details/41076849
public bool ExportDataGridview(DataGridView gridView,string str_path)
{
if(gridView.Rows.Count==0)
return false;
//建立Excel对象
Excel.Application excel=new Excel.Application();
excel.Application.Workbooks.Add(true);
excel.Visible=false;
//生成字段名称
for(int i=0;i<gridView.ColumnCount;i++)
{
excel.Cells[1,i+1]=gridView.Columns[i].HeaderText;
}
//填充数据
for(int i=0;i<gridView.RowCount-1;i++)
{
for(int j=0;j<gridView.ColumnCount;j++)
{
if(gridView[j,i].ValueType==typeof(string))
{
excel.Cells[i+2,j+1]="'"+gridView[j,i].Value.ToString();
}
else
{
excel.Cells[i+2,j+1]=gridView[j,i].Value.ToString();
}
}
}
excel.SaveWorkspace(str_path);
excel.Quit();
excel=null;
return true;
}
调用:
if(!ExportDataGridview(dataGridView1,"d:\\abc.xls"))
MessageBox.Show("表格中没有数据,无法导出数据!");
C# DataGridView导出Excel的更多相关文章
- 从DataGridView导出Excel
从DataGridView导出Excel的两种情况,不多说,直接记录代码(新建类,直接引用传入参数). using System; using System.Collections.Generic; ...
- c# datagridview导出Excel文件 问题
今天vs2010c#开发做datagridview导出Excel文件时,发现一个问题,和大家探讨一下: 第一种方式:写流的方式 private void button_Excel_Click(obje ...
- 一个通用的DataGridView导出Excel扩展方法(支持列数据格式化)
假如数据库表中某个字段存放的值“1”和“0”分别代表“是”和“否”,要在DataGridView中显示“是”和“否”,一般用两种方法,一种是在sql中直接判断获取,另一种是在DataGridView的 ...
- C# DataGridView 导出 Excel(根据Excel版本显示选择不同后缀格式xls或xlsx)
/// <summary> /// DataGridView导出至Excel,解决问题:打开Excel文件格式与扩展名指定格式不一致 /// </summary> /// &l ...
- DataGridView 导出Excel (封装)
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.W ...
- DataGridView导出Excel
将DataGridView里面的数据,导出到表格里面去. 首先,需要添加三个引用 直接在解决方案里,右键添加引用,找到路径即可.然后再把这三个文件复制到项目的根目录下. 然后定义导出表格的函数: pu ...
- winform datagridview 导出excel
using System;using System.Collections.Generic;using System.Text;using System.IO;using Microsoft.Offi ...
- 在窗体中把DataGridView中的数据导出Excel
//DataGridView导出Excel private void bt_Excl_Click(object sender, EventArgs e) { SaveFileDialog saveFi ...
- Winform 导出Excel
private void 导出excelToolStripMenuItem_Click(object sender, EventArgs e) { ) { var saveFileDialog1 = ...
随机推荐
- 【转载】Win10系统怎么清空剪切板?Win10系统清空剪切板的方法
以下文转载至系统之家: 网址:http://www.xitongzhijia.net/xtjc/20190319/152585.html Win10系统怎么清空剪切板?Win10系统清空剪切板的方法 ...
- 使用Log4net创建日志及简单扩展
如何使用Log4net创建日志及简单扩展 1.概述 log4net是.Net下一个非常优秀的开源日志记录组件.log4net记录日志的功能非常强大.它可以将日志分不同的等级,以不同的格式,输出到不同的 ...
- 解决Ecipse和搜狗输入法快捷键冲突问题
非常简单,关闭掉搜狗输入的所有快捷键!
- NET设计模式 第二部分 结构性模式(9):装饰模式(Decorator Pattern)
装饰模式(Decorator Pattern) ——.NET设计模式系列之十 Terrylee,2006年3月 概述 在软件系统中,有时候我们会使用继承来扩展对象的功能,但是由于继承为类型引入的静态特 ...
- http网站上传文件大小问题【没测试过】
web.config <httpRuntime maxRequestLength="" executionTimeout=""/> IIS 请求筛选 ...
- 在 vmware player中安装 ubuntu 17.10
目录 在 vmware 中安装 ubuntu 17.10 分区参考 vmware安装助手 第一步:更新 安装vmware tools 调整显示 第二步.输入法 五笔输入法 搜狗拼音输入法 ibus不能 ...
- 安装Microsoft SQL server Management Studio Express 2005 错误码是29506解决方案
安装Microsoft SQL server Management Studio Express 2005,安装程序在安装此软件包时遇到一个错误,这可能表示此软件包有错.错误码是29506”权限问题. ...
- MFC系统自动生成的停靠窗格关掉后,如何重新显示?
就是这几个x,关闭之后,再也显示不出来了: 原来,系统会默认记忆上次的状态,可以用函数来清除这个设置: 在MainFrame那个类中,CreateDocablePane之前,调用EnableLoadD ...
- 关于Eclipse无法显示package Explorer 内容的解决方法
今天电脑不知道怎么搞的抽风了, package explorer等内容完全无法显示.用window->view方法手动添加还是setpreView都没有办法解决. 网上搜了半天也没有解决办法.无 ...
- DB2如何将数据库表解锁
死锁是应用程序争抢资源造成de,把相关应用程序结束掉就可以解除死锁了 先用list application for database yourdatabasename show detail 来看看应 ...