• C# 中Excel导出,可以自由设置导出的excel格式


       Excel导出,不管在java,C#等后台语言,或者是javascrit,jquery等脚本语言,有很多种方式都可以将查出的数据导成excel的格式。我这次是从公司的一个同事那里学来的一个方法。是有关C#的winform的程序的。我们在实际应用中,是将导出的数据进行了复杂的处理,进行了合并单元格,处理单元格的边框,excel显示的字体,颜色,样式等等,都在导出excel的过程中用到了,而且导出的速度很快。下面我就这个方法和大家分享一下:

                Microsoft.Office.Interop.Excel.Application xlApp = new Microsoft.Office.Interop.Excel.Application(); //创建excel
                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 range1;
                Microsoft.Office.Interop.Excel.Range range2;
    
                worksheet.Name = "测试";
                worksheet.Cells[3, 3] = "列名1";
                worksheet.Cells[3, 4] = "列名2";
    
                //给要设置的单元格定位属性
                range1 = (Microsoft.Office.Interop.Excel.Range)worksheet.Cells[3, 3]; //定位单元格
                range2 = (Microsoft.Office.Interop.Excel.Range)worksheet.Cells[3, 4]; //定位单元格
                range1.ColumnWidth = 30;    //设置单元格的列的宽度
                range2.ColumnWidth = 35;
                range1.Font.Size = 12;     //设置单元格的字体的大小
                range2.Font.Size = 12;
    
                range1.Borders.Weight = XlBorderWeight.xlMedium;// 设置边框粗细
                range2.Borders.Weight = XlBorderWeight.xlMedium;
    
                range1.HorizontalAlignment = XlHAlign.xlHAlignCenter;  //excel单元格的内容居中(可以设置靠左,居中,靠右)
                range2.HorizontalAlignment = XlHAlign.xlHAlignCenter;
    
                range1.Font.Bold = true; //excel设置字体加粗格式
                range2.Font.Bold = true;
    
    
                //excel合并单元格
                Microsoft.Office.Interop.Excel.Range range;
                range = worksheet.get_Range(worksheet.Cells[4, 3], worksheet.Cells[9, 3]); 
                range.MergeCells = true;
    
                //worksheet.ClearArrows();
                xlApp.Visible = true; //导出exel(主要靠这句),将要导出的excel显示出来
                xlApp.ActiveWindow.DisplayGridlines = false; //消除excel的边框线

    使用上面的方法需要导入excel的一个dll包,名为“icrosoft.Office.Interop.Excel.dll”,有兴趣的可以实践一下。

  • 相关阅读:
    8.用户注销
    7.用户登陆,用户退出,记住用户名和密码
    6.后台验证码-session作用域
    5.验证用户名是否已经被注册:AJAXC请求
    4.前端注册表单验证 && 表单回填
    3.注册后台处理逻辑编写
    HTTP Status 500
    jquery之stop()的用法
    angular.forEach
    jquery如何获取第一个或最后一个子元素?
  • 原文地址:https://www.cnblogs.com/shunxiyuan/p/2876626.html
Copyright © 2020-2023  润新知