zl程序教程

您现在的位置是:首页 >  工具

当前栏目

Asp.Net用OWC操作Excel的实例代码

2023-06-13 09:15:03 时间
复制代码代码如下:

   stringconnstr=System.Configuration.ConfigurationManager.ConnectionStrings["DqpiHrConnectionString"].ToString();
       SqlConnectionconn=newSqlConnection(connstr);
       SqlDataAdaptersda=newSqlDataAdapter(sql1.Text,conn);
       DataSetds=newDataSet();
       conn.Open();
       sda.Fill(ds);
       conn.Close();
       OWC10.SpreadsheetClassxlsheet;
       xlsheet=newOWC10.SpreadsheetClass();
       DataRowdr;
       inti=0;
       for(intii=0;ii<ds.Tables[0].Rows.Count;ii++)
       {
           dr=ds.Tables[0].Rows[ii];
           //合并单元格
           xlsheet.get_Range(xlsheet.Cells[i+1,1],xlsheet.Cells[i+1,8]).set_MergeCells(true);
           xlsheet.get_Range(xlsheet.Cells[i+5,1],xlsheet.Cells[i+5,3]).set_MergeCells(true);
           xlsheet.get_Range(xlsheet.Cells[i+5,4],xlsheet.Cells[i+5,6]).set_MergeCells(true);
           xlsheet.get_Range(xlsheet.Cells[i+5,7],xlsheet.Cells[i+5,8]).set_MergeCells(true);
           xlsheet.ActiveSheet.Cells[i+1,1]=dr["姓名"].ToString()+"自然情况";
           //字体加粗
           xlsheet.get_Range(xlsheet.Cells[i+1,1],xlsheet.Cells[i+1,14]).Font.set_Bold(true);
           //单元格文本水平居中对齐
           xlsheet.get_Range(xlsheet.Cells[i+1,1],xlsheet.Cells[i+1,14]).set_HorizontalAlignment(OWC10.XlHAlign.xlHAlignCenter);
           //设置字体大小
           xlsheet.get_Range(xlsheet.Cells[i+1,1],xlsheet.Cells[i+1,14]).Font.set_Size(14);
           //设置列宽
           xlsheet.get_Range(xlsheet.Cells[i+1,8],xlsheet.Cells[i+1,8]).set_ColumnWidth(20);
           //画边框线
           xlsheet.get_Range(xlsheet.Cells[i+1,1],xlsheet.Cells[i+5,8]).Borders.set_LineStyle(OWC10.XlLineStyle.xlContinuous);
           //写入数据 (这里由DS生成)
           xlsheet.ActiveSheet.Cells[i+2,1]="姓名";
           xlsheet.ActiveSheet.Cells[i+2,2]=dr["姓名"].ToString();
           xlsheet.ActiveSheet.Cells[i+2,3]="曾用名";
           xlsheet.ActiveSheet.Cells[i+2,4]=dr["曾用名"].ToString();
           xlsheet.ActiveSheet.Cells[i+2,5]="出生年月";
           xlsheet.ActiveSheet.Cells[i+2,6]=DateTime.Parse(dr["出生年月"].ToString()).Year.ToString()+"-"+DateTime.Parse(dr["出生年月"].ToString()).Month.ToString();
           xlsheet.ActiveSheet.Cells[i+2,7]="参加工作时间";
           xlsheet.ActiveSheet.Cells[i+2,8]=DateTime.Parse(dr["参加工作时间"].ToString()).Year.ToString()+"-"+DateTime.Parse(dr["参加工作时间"].ToString()).Month.ToString();
           xlsheet.ActiveSheet.Cells[i+3,1]="性别";
           xlsheet.ActiveSheet.Cells[i+3,2]=dr["性别"].ToString();
           xlsheet.ActiveSheet.Cells[i+3,3]="民族";
           xlsheet.ActiveSheet.Cells[i+3,4]=dr["民族"].ToString();
           xlsheet.ActiveSheet.Cells[i+3,5]="政治面貌";
           xlsheet.ActiveSheet.Cells[i+3,6]=dr["政治面貌"].ToString();
           xlsheet.ActiveSheet.Cells[i+3,7]="职称";
           xlsheet.ActiveSheet.Cells[i+3,8]=dr["职称"].ToString();
           xlsheet.ActiveSheet.Cells[i+4,1]="学历";
           xlsheet.ActiveSheet.Cells[i+4,2]=dr["学历"].ToString();
           xlsheet.ActiveSheet.Cells[i+4,3]="学位";
           xlsheet.ActiveSheet.Cells[i+4,4]=dr["学位"].ToString();
           xlsheet.ActiveSheet.Cells[i+4,5]="职务";
           xlsheet.ActiveSheet.Cells[i+4,6]=dr["职务"].ToString();
           xlsheet.ActiveSheet.Cells[i+4,7]="档案号码";
           //Excel不支持0开头输入,加上姓氏首字母正好是编号全称
           xlsheet.ActiveSheet.Cells[i+4,8]=dr["姓氏首字母"].ToString()+dr["档案号码"].ToString();
           xlsheet.ActiveSheet.Cells[i+5,1]="现从事专业:"+dr["现从事专业"].ToString();
           xlsheet.ActiveSheet.Cells[i+5,4]="工作单位:"+dr["工作单位"].ToString();
           xlsheet.ActiveSheet.Cells[i+5,7]="身份证:"+dr["身份证号"].ToString();
           i+=6;
       }
       try
       {
           stringD=DateTime.Now.Year.ToString()+DateTime.Now.Month.ToString()+DateTime.Now.Day.ToString()+
           DateTime.Now.Hour.ToString()+DateTime.Now.Minute.ToString()+DateTime.Now.Second.ToString()+
           DateTime.Now.Millisecond.ToString();
           xlsheet.Export(Server.MapPath("./")+"\\"+D+".xls",OWC10.SheetExportActionEnum.ssExportActionNone,OWC10.SheetExportFormat.ssExportXMLSpreadsheet);
           Response.Write("<script>window.open(""+D+".xls")</script>");
       }
       catch
       {
       }
   }