vs2005生成excel

  1. using System;
  2. using System.Data;
  3. using System.Configuration;
  4. using System.Collections;
  5. using System.Web;
  6. using System.Web.Security;
  7. using System.Web.UI;
  8. using System.Web.UI.WebControls;
  9. using System.Web.UI.WebControls.WebParts;
  10. using System.Web.UI.HtmlControls;
  11. using Excel=Microsoft.Office.Interop.Excel;
  12. using System.Text;
  13. using System.IO;
  14. using System.Reflection;
  15. public partial class workbook : System.Web.UI.Page
  16. {
  17.     protected void Page_Load(object sender, EventArgs e)
  18.     {
  19.         CreateExcel();
  20.     }
  21.     private void CreateExcel()
  22.     {
  23.         //ExcelOperate excelOperate = new ExcelOperate();
  24.         Excel.Application app = new Excel.Application();
  25.         if (app == null)
  26.         {
  27.             return;
  28.         }
  29.         app.Visible = false;
  30.         app.UserControl = true;
  31.         Excel.Workbooks workbooks = app.Workbooks; //工作薄集合
  32.         Excel._Workbook workbook = workbooks.Add(Excel.XlWBATemplate.xlWBATWorksheet);//这里的Add方法里的参数就相当于继承了一个空模板(暂这样理解吧) 工作薄
  33.         Excel.Sheets sheets = workbook.Worksheets;//工作表集合
  34.         Excel._Worksheet worksheet = (Excel._Worksheet)sheets.get_Item(1);//工作表
  35.         worksheet.Copy(Missing.Value,workbook.Sheets.get_Item(1)); //复制工作表
  36.         worksheet.Copy(Missing.Value, worksheet);//复制工作表
  37.         Excel._Worksheet worksheet1= (Excel._Worksheet)sheets.get_Item(2);//工作表2
  38.        
  39.         worksheet1.Name = "工作表2";
  40.         if (worksheet == null)
  41.         {
  42.             return;
  43.         }
  44.         worksheet.get_Range(worksheet.Cells[1, 1], worksheet.Cells[1, 4]).Merge(Missing.Value); //横向合并
  45.         worksheet.get_Range(worksheet.Cells[1, 1], worksheet.Cells[1, 1]).Value2 = "导出EXCEL测试一";
  46.         //excelOperate.SetBold(worksheet, worksheet.Cells[1, 1], worksheet.Cells[1, 1]); //黑体
  47.         //excelOperate.SetHAlignCenter(worksheet, worksheet.Cells[1, 1], worksheet.Cells[1, 1]);//居中
  48.         //excelOperate.SetBgColor(worksheet, worksheet.Cells[1, 1], worksheet.Cells[1, 1], System.Drawing.Color.Red);//背景色
  49.         //excelOperate.SetFontSize(worksheet, worksheet.Cells[1, 1], worksheet.Cells[1, 1], 16);//字体大小
  50.         //excelOperate.SetRowHeight(worksheet, worksheet.Cells[1, 1], worksheet.Cells[1, 1], 32.25);//行高
  51.         worksheet.get_Range(worksheet.Cells[1, 1], worksheet.Cells[1, 1]).Borders.Color = System.Drawing.ColorTranslator.ToOle(System.Drawing.Color.Black);//黑色连续边框
  52.         worksheet.Cells[2, 1] = "序号";
  53.         worksheet.Cells[2, 2] = "公司";
  54.         worksheet.Cells[2, 3] = "部门";
  55.         //excelOperate.SetBold(worksheet, worksheet.Cells[2, 1], worksheet.Cells[2, 3]); //黑体
  56.         worksheet.get_Range(worksheet.Cells[2, 1], worksheet.Cells[2, 3]).Borders.Color = System.Drawing.ColorTranslator.ToOle(System.Drawing.Color.Black);
  57.         //excelOperate.SetHAlignRight(worksheet, worksheet.Cells[2, 1], worksheet.Cells[2, 3]);
  58.         //excelOperate.SetBgColor(worksheet, worksheet.Cells[2, 1], worksheet.Cells[2, 3], System.Drawing.Color.Silver);//背景色
  59.         int rowNum = 0;
  60.         //for (int i = 0; i < dv.Count; i++)
  61.         //{
  62.         int i = 0;
  63.             rowNum = i + 1;
  64.             worksheet.Cells[3 + i, 1] = 1;
  65.             worksheet.Cells[3 + i, 2] = "test";
  66.             worksheet.Cells[3 + i, 3] = "测试12345";
  67.             //excelOperate.SetBold(worksheet, worksheet.Cells[3 + i, 1], worksheet.Cells[3 + i, 1]); //黑体
  68.             //excelOperate.SetHAlignCenter(worksheet, worksheet.Cells[3 + i, 1], worksheet.Cells[3 + i, 3]);//居中
  69.             worksheet.get_Range(worksheet.Cells[3 + i, 1], worksheet.Cells[3 + i, 3]).Borders.Color = System.Drawing.ColorTranslator.ToOle(System.Drawing.Color.Black);//设置边框颜色,不然打印预览,会非常不雅观
  70.         //}
  71.         //excelOperate.SetColumnWidth(worksheet, "A", 10);
  72.         //excelOperate.SetColumnWidth(worksheet, "B", 20);
  73.         //excelOperate.SetColumnWidth(worksheet, "C", 20);
  74.             worksheet.get_Range(worksheet.Cells[4, 1], worksheet.Cells[5, 1]).Merge(Missing.Value); //纵向合并
  75.             worksheet.get_Range(worksheet.Cells[4, 1], worksheet.Cells[5, 1]).Value2 = "测试纵向合并";
  76.             worksheet.get_Range(worksheet.Cells[4, 1], worksheet.Cells[5, 1]).Borders.Color = System.Drawing.ColorTranslator.ToOle(System.Drawing.Color.Red);
  77.           
  78.         worksheet.Name = "导出EXCEL测试一"//表命名
  79.         
  80.         worksheet1.get_Range(worksheet1.Cells[1,1],worksheet1.Cells[1,4]).Merge(Missing.Value);
  81.         worksheet1.get_Range(worksheet1.Cells[1,1],worksheet1.Cells[1,4]).Value2="工作表2";
  82.         worksheet1.get_Range(worksheet1.Cells[1, 1], worksheet1.Cells[1, 4]).Borders.Color = System.Drawing.ColorTranslator.ToOle(System.Drawing.Color.Red);
  83.         string tick = DateTime.Now.Ticks.ToString();
  84.         
  85.         //save_path = temp_path + "//" + tick + ".xls";
  86.         string save_path = "~/"+tick + ".xls";
  87.         workbook.SaveAs(Server.MapPath(save_path),Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Excel.XlSaveAsAccessMode.xlNoChange, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value);
  88.         //excelOperate.Dispose(worksheet, workbook, app);//关闭Excel进程
  89.         app.Quit();
  90.     }
  91.       
  92.     
  93. }
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值