DataGridView 导出到Excel
#region 导出四个表格到Excel
/// <summary>
/// 导出四个表格到Excel
/// </summary>
/// <param name="dgvPaoDian"></param>
/// <param name="strPaoDian"></param>
/// <param name="dgvGJS"></param>
/// <param name="strGJS"></param>
/// <param name="dgvSHZDS"></param>
/// <param name="strSHZDS"></param>
/// <param name="dgvQYZDS"></param>
/// <param name="strQYZDS"></param>
/// <param name="FilePathName"></param>
/// <returns></returns>
public static bool MultiGvwToExcel(DataGridViewX dgvPaoDian, string strPaoDian, DataGridViewX dgvGJS, string strGJS, DataGridViewX dgvSHZDS, string strSHZDS, DataGridViewX dgvQYZDS, string strQYZDS, ref string FilePathName)
{
bool MyReturnValye = false;
if (dgvPaoDian.DataSource == null && dgvGJS.DataSource == null && dgvSHZDS.DataSource == null && dgvQYZDS.DataSource == null)
{
MyReturnValye = false;
//没有绑定任何数据源
}
else
{
string path;
SaveFileDialog savefile = new SaveFileDialog();
savefile.Filter = "Execl files(*.xls)|*.xls";
if (savefile.ShowDialog() == DialogResult.OK && savefile.FileName != "")
{
//获取保存路径
path = savefile.FileName;
Workbook wb = new Workbook();
wb.Worksheets.Add();
wb.Worksheets.Add();
wb.Worksheets.Add();
Worksheet ws = wb.Worksheets[0];
ws.Name = strPaoDian;
Worksheet ws1 = wb.Worksheets[1];
ws1.Name = strGJS;
Worksheet ws2 = wb.Worksheets[2];
ws2.Name = strSHZDS;
Worksheet ws3 = wb.Worksheets[3];
ws3.Name = strQYZDS;
Cells cell;
int i, j;
//设置风格
#region 第一个sheet
if (dgvPaoDian.DataSource != null)
{
if (dgvPaoDian.RowCount > 0)
{
cell = ws.Cells;
Style style1 = wb.Styles[wb.Styles.Add()];
style1.Font.Name = "宋体";
style1.Font.IsBold = false;//设置粗体
style1.Font.Size = 12;//设置字体大小
style1.HorizontalAlignment = TextAlignmentType.Center;
//设置标题
for (i = 0; i < dgvPaoDian.ColumnCount; i++)
{
cell[0, i].PutValue(dgvPaoDian.Columns[i].HeaderText.ToString());
cell[0, i].SetStyle(style1);
}
//设置内容
for (i = 0; i < dgvPaoDian.RowCount; i++)
{
for (j = 0; j < dgvPaoDian.ColumnCount; j++)
{
cell[i + 1, j].PutValue(dgvPaoDian.Rows[i].Cells[j].Value.ToString());
cell[i + 1, j].SetStyle(style1);
}
}
//设置列宽
for (i = 0; i < dgvPaoDian.ColumnCount; i++)
{
cell.SetColumnWidth(i, 14);
}
}
cell = null;
}
#endregion
#region 第二个sheet
if (dgvGJS.DataSource != null)
{
if (dgvGJS.RowCount > 0)
{
cell = ws1.Cells;
Style style1 = wb.Styles[wb.Styles.Add()];
style1.Font.Name = "宋体";
style1.Font.IsBold = false;//设置粗体
style1.Font.Size = 12;//设置字体大小
style1.HorizontalAlignment = TextAlignmentType.Center;
//设置标题
for (i = 0; i < dgvGJS.ColumnCount; i++)
{
cell[0, i].PutValue(dgvGJS.Columns[i].HeaderText.ToString());
cell[0, i].SetStyle(style1);
}
//设置内容
for (i = 0; i < dgvGJS.RowCount; i++)
{
for (j = 0; j < dgvGJS.ColumnCount; j++)
{
cell[i + 1, j].PutValue(dgvGJS.Rows[i].Cells[j].Value.ToString());
cell[i + 1, j].SetStyle(style1);
}
}
//设置列宽
for (i = 0; i < dgvGJS.ColumnCount; i++)
{
cell.SetColumnWidth(i, 14);
}
}
cell = null;
}
#endregion
#region 第三个sheet
if (dgvSHZDS.DataSource != null)
{
if (dgvSHZDS.RowCount > 0)
{
cell = ws2.Cells;
Style style1 = wb.Styles[wb.Styles.Add()];
style1.Font.Name = "宋体";
style1.Font.IsBold = false;//设置粗体
style1.Font.Size = 12;//设置字体大小
style1.HorizontalAlignment = TextAlignmentType.Center;
//设置标题
for (i = 0; i < dgvSHZDS.ColumnCount; i++)
{
cell[0, i].PutValue(dgvSHZDS.Columns[i].HeaderText.ToString());
cell[0, i].SetStyle(style1);
}
//设置内容
for (i = 0; i < dgvSHZDS.RowCount; i++)
{
for (j = 0; j < dgvSHZDS.ColumnCount; j++)
{
cell[i + 1, j].PutValue(dgvSHZDS.Rows[i].Cells[j].Value.ToString());
cell[i + 1, j].SetStyle(style1);
}
}
//设置列宽
for (i = 0; i < dgvSHZDS.ColumnCount; i++)
{
cell.SetColumnWidth(i, 14);
}
}
cell = null;
}
#endregion
#region 第四个sheet
if (dgvQYZDS.DataSource != null)
{
if (dgvQYZDS.RowCount > 0)
{
cell = ws3.Cells;
Style style1 = wb.Styles[wb.Styles.Add()];
style1.Font.Name = "宋体";
style1.Font.IsBold = false;//设置粗体
style1.Font.Size = 12;//设置字体大小
style1.HorizontalAlignment = TextAlignmentType.Center;
//设置标题
for (i = 0; i < dgvQYZDS.ColumnCount; i++)
{
cell[0, i].PutValue(dgvQYZDS.Columns[i].HeaderText.ToString());
cell[0, i].SetStyle(style1);
}
//设置内容
for (i = 0; i < dgvQYZDS.RowCount; i++)
{
for (j = 0; j < dgvQYZDS.ColumnCount; j++)
{
cell[i + 1, j].PutValue(dgvQYZDS.Rows[i].Cells[j].Value.ToString());
cell[i + 1, j].SetStyle(style1);
}
}
//设置列宽
for (i = 0; i < dgvQYZDS.ColumnCount; i++)
{
cell.SetColumnWidth(i, 14);
}
}
cell = null;
}
#endregion
wb.Save(path);
FilePathName = path;
MyReturnValye = true;
}
else
{
MyReturnValye = false;
}
}
return MyReturnValye;
}
#endregion
DataGridView 导出到Excel的更多相关文章
- DataGridView导出到Excel的三个方法
#region DataGridView数据显示到Excel /// <summary> /// 打开Excel并将DataGridView控件中数据导出到Excel /// </s ...
- c# datagridview导出到excel【转载】
c# datagridview导出到excel[转载] http://hi.baidu.com/weizier/blog/item/8212caea1123b4d6d439c9fe.html 本作者使 ...
- C# - VS2019 DataGridView导出到Excel的三种方法
//原文出处:http://www.yongfa365.com/Item/DataGridViewToExcel.html 1 #region DataGridView数据显示到Excel /// & ...
- Winform 中 dataGridView 导出到Excel中的方法总结
最近,在做CS端数据导出到Excel中时网上找了很多代码感觉都不是自己想要的,通过自己的整理归纳得到一个比较通用的方法,就给大家分享一下: 该方法需要用到两个参数(即对象),一个 DataGridV ...
- winform DataGridView 导出到Excel表格 分类: WinForm 2014-07-04 10:48 177人阅读 评论(0) 收藏
public bool ExportDataGridview(DataGridView gridView) { if (gridView.Rows.Count ...
- [WinForm]dataGridView导出到EXCEL
方法一: SaveFileDialog dlg = new SaveFileDialog(); dlg.Filter = "Execl files (*.xls)|*.xls"; ...
- WinForm中DataGridView导出为Excel(快速版)
public static void ExportExcel(DataGridView myDGV, string fileName) { string saveFileName = fileName ...
- datagridview导出到excel
Microsoft.Office.Interop.Excel.Range range = null; string saveFileName = ""; bool fileSave ...
- 学习笔记 DataGridView数据导出为Excel
DataGridView数据导出为Excel 怎样把WinForm下的“DGV”里的绑定数据库后的数据导出到Excel中. 比如:在窗体里有个一“DGV”,DataGridView1,绑定了数据源 ...
随机推荐
- UE4 4.14 专用服务器没有生成解决办法
简单说一下UE4 专用服务器的生成(网上也有其它版本的但是在4.14.1 上不管用) 1.用源代码编译的引擎(如何获取百度上有很多介绍)创建一个C++ UE4 工程. 2. 在vs 中找到红色这个文件 ...
- iOS的主要框架介绍
框架是一个目录,这个目录包含了共享库,访问共享库里代码的头文件,和其它的图片和声音的资源文件.一个共享库定义的方法或函数可以被应用程序调用. IOS提供了很多你可以在应用程序里调用的框架.要使用一个框 ...
- Delphi常用关键字用法详解
本文详细介绍了Delphi中常用的各个关键字名称及用法,供大家在编程过程中借鉴参考之用.详情如下: absolute: ? 1 2 3 4 5 6 7 8 9 10 //它使得你能够创建一个新变量, ...
- BZOJ 2456 杂题 卡内存
2456: mode Time Limit: 1 Sec Memory Limit: 1 MBSubmit: 3702 Solved: 1551[Submit][Status][Discuss] ...
- 关于url传参中文乱码问题
之前都一直很不了解中文编码得问题,之前在做项目中没碰到那么头痛的问题.所以一直没有了解中文乱码的问题. 问题描述: 地址: http://localhost:8080/sun-government/c ...
- WindowsAPI开发常用资料
主类 子类 功能 Win32API SHGetSpecialFolderLocation 获取系统特殊文件夹路径(SHGetSpecialFolderLocation) 通过 SHGetSpecial ...
- VS高效开发快捷键
Ctrl + Tab 标签切换 Ctrl + '-'向后导航 Ctrl + Shift+'-'向前导航 Ctrl +Shift +空格 提示函数参数 Ctrl +F4 退出本标签 Ctrl+F 查找 ...
- HTTP长连接和短连接
1.HTTP协议的五大特点1)支持客户/服务器模式2)简单快速3)灵活4)无连接每次连接只处理一个请求,服务器处理完客户的请求,并受到客户的应答后,断开连接.5)无状态协议不会记录服务器客户端状态. ...
- PHP在yii2中封装SuperSlide 幻灯片编写自己的SuperSlideWidget的例子
因为近期给朋友公司做个门户网站,把荒置了6.7年的PHP又重新拾起,发现PHP这些年兴旺多了,很多新的东西看的不明不白,研究了几个框架ZendFramework.thinkphp.Symfony.yi ...
- 发布 Ionic iOS 企业级应用
转自:http://www.jianshu.com/p/c12fae498975 Ionic 项目开发完成之后呢,自然就是打包发布了,今天说说 iOS 的打包和发布.iOS 的发布方式分为三种:iOS ...