#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. C++学习笔记25:makefile文件2

    Makefile文件语法 行解析:命令按行解析 命令行的行首字符为Tab键,其他行的行首字符不得为Tab键,但可以使用多个空格缩进 换行:命令太长时,行尾使用"\"换行 注释:行首 ...

  2. Day24_多线程第一天

    1.线程 1.概述      宏观来讲      进程:就是正在运行的程序      线程:就是进程的执行路径,执行单元 2.创建并启动线程的两种方式(掌握)      1.定义一个类继承Thread ...

  3. 【CSS】梯形、平行四边形导航条与毛玻璃效果【转】

    转载出处:http://www.cnblogs.com/Uncle-Keith/p/5943158.html 代码部分有小改动. 导航条对于每一个Web前端攻城狮来说并不陌生,但是毛玻璃可能会相对陌生 ...

  4. Sublime Text 3 简体中文汉化包

    Sublime Text 3下载 不用说是上官方下载地址:http://www.sublimetext.com/3 Sublime Text 3 简体中文汉化包使用方法 1.将上面要求下载的subli ...

  5. test「Python」流程&中文

    #例1 text='dShArpen骑草泥马在马勒隔壁玩Python时看到一群SB绿茶婊在逗逼,马上的他马上吓尿了' iftext = '马' for letter in text.decode('u ...

  6. bootstrap-16

    进度条----基本样式: Bootstrap框架中对于进度条提供了一个基本的样式,一个100%宽度的背景色,然后高亮颜色表示完成进度.其实制作这样的进度条非常容易,一般是使用两个容器,外容器具有一定的 ...

  7. bootstrap-14

    基础导航条: 使用方法:1. 首先在制作导航的列表(<ul class="nav">)基础上添加类名"navbar-nav" 2.在列表外部添加一个 ...

  8. MediaCodec Name & Type

    OMX.google.mp3.decoder support type:audio/mpegOMX.google.amrnb.decoder support type:audio/3gppOMX.go ...

  9. Codeforces Round #173 (Div. 2)

    A. Bit++ 模拟. B. Painting Eggs 贪心,每个物品给使差值较小的那个人,根据题目的约数条件,可证明贪心的正确性. C. XOR and OR \(,,00 \to 00,01 ...

  10. sql语句 decimal(18,0)什么意思

    decimal(18,0)18是定点精度,0是小数位数.decimal(a,b)a指定指定小数点左边和右边可以存储的十进制数字的最大个数,最大精度38.b指定小数点右边可以存储的十进制数字的最大个数. ...