#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的更多相关文章

  1. DataGridView导出到Excel的三个方法

    #region DataGridView数据显示到Excel /// <summary> /// 打开Excel并将DataGridView控件中数据导出到Excel /// </s ...

  2. c# datagridview导出到excel【转载】

    c# datagridview导出到excel[转载] http://hi.baidu.com/weizier/blog/item/8212caea1123b4d6d439c9fe.html 本作者使 ...

  3. C# - VS2019 DataGridView导出到Excel的三种方法

    //原文出处:http://www.yongfa365.com/Item/DataGridViewToExcel.html 1 #region DataGridView数据显示到Excel /// & ...

  4. Winform 中 dataGridView 导出到Excel中的方法总结

    最近,在做CS端数据导出到Excel中时网上找了很多代码感觉都不是自己想要的,通过自己的整理归纳得到一个比较通用的方法,就给大家分享一下: 该方法需要用到两个参数(即对象),一个  DataGridV ...

  5. winform DataGridView 导出到Excel表格 分类: WinForm 2014-07-04 10:48 177人阅读 评论(0) 收藏

    public bool ExportDataGridview(DataGridView gridView)         {             if (gridView.Rows.Count ...

  6. [WinForm]dataGridView导出到EXCEL

    方法一: SaveFileDialog dlg = new SaveFileDialog(); dlg.Filter = "Execl files (*.xls)|*.xls"; ...

  7. WinForm中DataGridView导出为Excel(快速版)

    public static void ExportExcel(DataGridView myDGV, string fileName) { string saveFileName = fileName ...

  8. datagridview导出到excel

    Microsoft.Office.Interop.Excel.Range range = null; string saveFileName = ""; bool fileSave ...

  9. 学习笔记 DataGridView数据导出为Excel

    DataGridView数据导出为Excel   怎样把WinForm下的“DGV”里的绑定数据库后的数据导出到Excel中. 比如:在窗体里有个一“DGV”,DataGridView1,绑定了数据源 ...

随机推荐

  1. maven - Eclipse构建maven项目

    前面的博文已经介绍了如何安装maven,本文将记录如何在Eclipse下构建maven项目. 一.Eclipse maven插件安装 关于安装Eclipse maven插件,网上有很多方法,这里推荐一 ...

  2. php读取json时无数据(为空)的解决方法

    在使用PHP调用一些json接口文件时 如果使用 file_get_contents 获取页面json数据后 再使用json_decode()解析后 数据无法正常输出 这是的返回值为null 这是由于 ...

  3. appium +python 一个简单的例子

    appium 安装和python 安装好后. 1.      启动android模拟器--Genymotion-点击Start 2.      启动appium 3.     运行代码. # -*- ...

  4. 【引】runtime全解析,P1:Programming Guide

    h2.Overview Objective-C language defers as many decisions as it can from compile time and link time ...

  5. Install Debian note

    environment: already install xp,win7 and win8PE, left 87G space to install Debian, this space not fo ...

  6. ubuntu 安装mongodb

    安装 mongodb sudo apt-get install mongodb 创建目录(放在单独文件夹中) mkdir data/aa 在目录外面启动,端口为27017 mongod -dbpath ...

  7. BZOJ1433 ZJOI2009 假期的宿舍 二分图匹配

    1433: [ZJOI2009]假期的宿舍 Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 2375  Solved: 1005[Submit][Sta ...

  8. 《Matrix Computation 3rd》读书笔记——第2章 矩阵分析

  9. 用帝国CMS时遇到的问题

    今天用帝国CMS时出现了如下提示: Table 'tuanwei.phome_ecms_twnews_index' doesn't exist delete from ***_ecms_t 删除栏目时 ...

  10. 庞巴迪TCMS学习笔记之一(IEC 61131-3函数)

    在学习列车TCMS系统的软件逻辑图时会遇到IEC 61131-3的语言.其中通用的图形化函数总结如下.