C#打印EXCEL(二)

0.引用命名空间


using Word = Microsoft.Office.Interop.Word;
using Office = Microsoft.Office.Core;


1.书写方法


  protected void ExportExcel()
        {
            string strwhere = GetWhere();
            string sql = "SELECT a.JBXX_XMMC as 项目名称,a.JBXX_SEC as 项目编号,a.JBXX_XZQMC as 项目位置,c.NAME  as 项目类型,b.JH_GM_ZMJ as 总规模,b.JH_TZ_ZTZ as 总投资 ,JBXX_XMJD as 项目进度"
                      + " from TDZZPX.v_jbxx a "
                      + " LEFT JOIN TDZZPX.Z_JH b ON a.JBXX_SEC = b.JBXX_SEC "
                      + " LEFT JOIN gt_xmlx c ON a.JBXX_XMLX = c.NO";
            sql += " WHERE 1=1 " + strwhere;
            DataTable dt = BP.DA.DBAccess.RunSQLReturnTable(sql);

            if (dt == null || dt.Rows.Count == 0) return;

            Microsoft.Office.Interop.Excel.Application xlApp = new Microsoft.Office.Interop.Excel.Application();



            if (xlApp == null)
            {

                return;

            }

            System.Globalization.CultureInfo CurrentCI = System.Threading.Thread.CurrentThread.CurrentCulture;

            System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en-US");

            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];

            Microsoft.Office.Interop.Excel.Range range;

            long totalCount = dt.Rows.Count;

            long rowRead = 0;

            float percent = 0;

            for (int i = 0; i < dt.Columns.Count; i++)
            {

                worksheet.Cells[1, i + 1] = dt.Columns[i].ColumnName;

                range = (Microsoft.Office.Interop.Excel.Range)worksheet.Cells[1, i + 1];

                range.Interior.ColorIndex = 15;

                range.Font.Bold = true;

            }

            for (int r = 0; r < dt.Rows.Count; r++)
            {

                for (int i = 0; i < dt.Columns.Count; i++)
                {
                    DataColumn dc = dt.Columns[i];
                    if (dc.ColumnName == "项目进度")
                    {
                        worksheet.Cells[r + 2, i + 1] = GetJDMC(dt.Rows[r][i].ToString());
                    }
                    else
                    {
                        worksheet.Cells[r + 2, i + 1] = dt.Rows[r][i].ToString();

                    }

                }

                rowRead++;

                percent = ((float)(100 * rowRead)) / totalCount;

            }

            xlApp.Visible = true;

        }


2.调用即可

 ExportExcel();

参考资源: http://download.csdn.net/detail/hugaozhuang/7338289



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值