当前位置:  编程技术>.net/c#/asp.net

不安装excel使用c#创建excel文件

    来源: 互联网  发布时间:2014-10-28

    本文导语:  代码如下://创建excelobject missing = System.Reflection.Missing.Value;Excel.Application app = new Excel.Application();app.Application.Workbooks.Add(true);Excel.Workbook book = (Excel.Workbook)app.ActiveWorkbook;Excel.Worksheet sheet = (Excel.Worksheet)book.ActiveSheet;#region 第一行sheet....

代码如下:

//创建excel
object missing = System.Reflection.Missing.Value;
Excel.Application app = new Excel.Application();
app.Application.Workbooks.Add(true);
Excel.Workbook book = (Excel.Workbook)app.ActiveWorkbook;
Excel.Worksheet sheet = (Excel.Worksheet)book.ActiveSheet;

#region 第一行
sheet.Cells[1, 1] = "登录名(loginID)";
sheet.Cells[1, 2] = "密码(passWord)";
sheet.Cells[1, 3] = "姓(familyName)";
sheet.Cells[1, 4] = "名(firstName)";
sheet.Cells[1, 5] = "性别(gender)";
sheet.Cells[1, 6] = "出生时间(dateofBirth)";
sheet.Cells[1, 7] = "手机号(cellphoneNum)";
sheet.Cells[1, 8] = "身份证号(identityID)";
sheet.Cells[1, 9] = "就职状态(jobStatus)";
sheet.Cells[1, 10] = "公司电话(telephoneNum)";
sheet.Cells[1, 11] = "邮箱(email)";
sheet.Cells[1, 12] = "祖籍(nativeHome)";
sheet.Cells[1, 13] = "毕业学校(graduateSchool)";
sheet.Cells[1, 14] = "专业(major)";
sheet.Cells[1, 15] = "毕业时间(graduateTime)";
sheet.Cells[1, 16] = "学历(education)";
sheet.Cells[1, 17] = "邮编(zipCode)";
sheet.Cells[1, 18] = "地址(address)";
sheet.Cells[1, 19] = "入职时间(entryTime)";
sheet.Cells[1, 20] = "离开时间(leaveTime)";
sheet.Cells[1, 21] = "备注(remarks)";
sheet.Cells[1, 22] = "部门(departmentID)";
sheet.Cells[1, 23] = "职位(JobTypeID";
#endregion

#region 循环写入内容
int count = 1;
foreach (EmployeeInfo_tbl item in enterpriseInfo.Employees)
{
count = count+1;
sheet.Cells[count, 1] = item.loginID;
sheet.Cells[count, 2] = item.passWord;
sheet.Cells[count, 3] = item.familyName;//"姓(familyName)";
sheet.Cells[count, 4] = item.firstName; //"名(firstName)";
sheet.Cells[count, 5] = item.gender; //"性别(gender)";
sheet.Cells[count, 6] = item.dateofBirth; //"出生时间(dateofBirth)";
sheet.Cells[count, 7] = item.cellphoneNum;//"手机号(cellphoneNum)";
sheet.Cells[count, 8] = item.identityID;//"身份证号(identityID)";
sheet.Cells[count, 9] = item.jobStatus;//"就职状态(jobStatus)";
sheet.Cells[count, 10] = item.telephoneNum;//"公司电话(telephoneNum)";
sheet.Cells[count, 11] = item.email;//"邮箱(email)";
sheet.Cells[count, 12] = item.nativeHome;//"祖籍(nativeHome)";
sheet.Cells[count, 13] = item.graduateSchool;// "毕业学校(graduateSchool)";
sheet.Cells[count, 14] = item.major;// "专业(major)";
sheet.Cells[count, 15] = item.graduateTime;//"毕业时间(graduateTime)";
sheet.Cells[count, 16] = item.education;// "学历(education)";
sheet.Cells[count, 17] = item.zipCode;// "邮编(zipCode)";
sheet.Cells[count, 18] = item.address;//"地址(address)";
sheet.Cells[count, 19] = item.entryTime;//"入职时间(entryTime)";
sheet.Cells[count, 20] = item.leaveTime;// "离开时间(leaveTime)";
sheet.Cells[count, 21] = item.remarks;// "备注(remarks)";
sheet.Cells[count, 22] = item.Department.departmentName;// "部门(departmentID)";
sheet.Cells[count, 23] = item.JobType.jobName;// "职位(JobTypeID";
}
#endregion
//保存
//book.SaveCopyAs(_FolderBrowserDialog.SelectedPath + @"test.xls");
//关闭文件
//book.Close(false, missing, missing);
//退出excel
//app.Quit();

需要引用com里的Microsoft Excel 14.0 Object Libary(其它版本方法大致相同)

当然就意味着做这件事情就必须安装office Excel,

如果需要饶过office Excel那么就看我最后的实现方法吧~!

我最后的实现是使用的第三方Aspose.Cells.dll

具了解这个dll一直免费,(第三方有风险,使用需谨慎)

代码如下:

//创建excel
Aspose.Cells.Workbook workbook = new Aspose.Cells.Workbook();
Aspose.Cells.Worksheet sheet = workbook.Worksheets[0];
sheet.FreezePanes(1, 1, 1, 0);//冻结第一行

#region 第一行
sheet.Cells["A1"].PutValue("登录名(loginID)");
sheet.Cells["B1"].PutValue("密码(passWord)");
sheet.Cells["C1"].PutValue("姓(familyName)");
sheet.Cells["D1"].PutValue("名(firstName)");
sheet.Cells["E1"].PutValue("性别(gender)");
sheet.Cells["F1"].PutValue("出生时间(dateofBirth)");
sheet.Cells["G1"].PutValue("手机号(cellphoneNum)");
sheet.Cells["H1"].PutValue("身份证号(identityID)");
sheet.Cells["I1"].PutValue("就职状态(jobStatus)");
sheet.Cells["J1"].PutValue("公司电话(telephoneNum)");
sheet.Cells["K1"].PutValue("邮箱(email)");
sheet.Cells["L1"].PutValue("祖籍(nativeHome)");
sheet.Cells["M1"].PutValue("毕业学校(graduateSchool)");
sheet.Cells["N1"].PutValue("专业(major)");
sheet.Cells["O1"].PutValue("毕业时间(graduateTime)");
sheet.Cells["P1"].PutValue("学历(education)");
sheet.Cells["Q1"].PutValue("邮编(zipCode)");
sheet.Cells["R1"].PutValue("地址(address)");
sheet.Cells["S1"].PutValue("入职时间(entryTime)");
sheet.Cells["T1"].PutValue("离开时间(leaveTime)");
sheet.Cells["U1"].PutValue("备注(remarks)");
sheet.Cells["V1"].PutValue("部门(departmentID)");
sheet.Cells["W1"].PutValue("职位(JobTypeID");
#endregion

#region 循环写入内容
int count = 1;
foreach (EmployeeInfo_tbl item in enterpriseInfo.Employees)
{
 count = count + 1;
 sheet.Cells["A" + count].PutValue(item.loginID);
 sheet.Cells["B" + count].PutValue(item.passWord);
 sheet.Cells["C" + count].PutValue(item.familyName);//"姓(familyName)";
 sheet.Cells["D" + count].PutValue(item.firstName); //"名(firstName)";
 sheet.Cells["E" + count].PutValue(item.gender == 0 ? "女" : "男"); //"性别(gender)";
 sheet.Cells["F" + count].PutValue(item.dateofBirth.ToString() == "" ? null : item.dateofBirth.ToString()); //"出生时间(dateofBirth)";
 sheet.Cells["G" + count].PutValue(item.cellphoneNum.ToString());//"手机号(cellphoneNum)";
 sheet.Cells["H" + count].PutValue(item.identityID);//"身份证号(identityID)";
 sheet.Cells["I" + count].PutValue(item.jobStatus == 1 ? "在职" : "离职");//"就职状态(jobStatus)";
 sheet.Cells["J" + count].PutValue(item.telephoneNum);//"公司电话(telephoneNum)";
 sheet.Cells["K" + count].PutValue(item.email);//"邮箱(email)";
 sheet.Cells["L" + count].PutValue(item.nativeHome);//"祖籍(nativeHome)";
 sheet.Cells["M" + count].PutValue(item.graduateSchool);// "毕业学校(graduateSchool)";
 sheet.Cells["N" + count].PutValue(item.major);// "专业(major)";
 sheet.Cells["O" + count].PutValue(item.graduateTime.ToString() == "" ? null : item.graduateTime.ToString());//"毕业时间(graduateTime)";
 string ed = "";
 switch (item.education)
 {
  case 1:
ed = "初中/小学";
break;
  case 2:
ed = "高中/中专";
break;
  case 3:
ed = "本科/专科";
break;
  case 4:
ed = "研究生以上";
break;
  default:
ed = null;
break;
 }
 sheet.Cells["P" + count].PutValue(ed);// "学历(education)";
 sheet.Cells["Q" + count].PutValue(item.zipCode);// "邮编(zipCode)";
 sheet.Cells["R" + count].PutValue(item.address);//"地址(address)";
 sheet.Cells["S" + count].PutValue(item.entryTime.ToString() == "" ? null : item.entryTime.ToString());//"入职时间(entryTime)";
 sheet.Cells["T" + count].PutValue(item.leaveTime.ToString() == "" ? null : item.leaveTime.ToString());// "离开时间(leaveTime)";
 sheet.Cells["U" + count].PutValue(item.remarks);// "备注(remarks)";
 sheet.Cells["V" + count].PutValue(item.Department.departmentName);// "部门(departmentID)";
 sheet.Cells["W" + count].PutValue(item.JobType.jobName);// "职位(JobTypeID";
}
#endregion

//保存
workbook.Save(_FolderBrowserDialog.SelectedPath + @"test.xls");

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 安装完jbuilder无法创建工程(在root用户下),如何解决,如何删除安装?
  • 比较详细的完美解决安装sql2000时出现以前的某个程序安装已在安装计算机上创建挂起的文件操作。 原创
  • 安装程序创建器 Install4j
  • 如何在硬盘上创建和安装一个文件系统?
  • 请问MYSQL 创建的数据库在什么地方(路径)我用的是REDHAT7。3并用RPM安装
  • 安装LINUX系统时创建分区失败 请指教
  • linux redhat5.6安装oracle11g在自动创建实例时停住不动,有图
  • Oracle WebLogic Server 安装并创建域
  • 在RedHat Advance Server下安装Oracle9i R2不能创建数据库问题
  • 完美解决MSSQL"以前的某个程序安装已在安装计算机上创建挂起的文件操作"
  • 如何创建unixware7系统安装的引导盘
  • 在虚拟机上安装linux,在手动分区时有个警告:说sda分区表无法读取,如果要创建,需初始化,此驱动上的所有数据会丢失
  • Django在Win7下的安装及创建项目hello word简明教程
  • 如何在硬盘上创建和安装一个文件系统?
  • 请问linux安装在创建交换分区时,挂载点选择什么?我没有选,出现的是灰色的<不适用>,有问题吗?
  • 俺想装一个linux7.2与win2k共存,但在创建swap分区时提示不能安装,why?请大侠赐教
  • Docker支持的安装方式
  • linux安装nagios,安装nrpe时候,先安装了openssl再从安装nrpe出错。
  • Centos6下安装Shell下文件上传下载rz,sz命令
  • 我已经用源代码方式安装了apache,如何让它支持php和mysql(php没有安装,mysql安装的是rpm包),要不要重新安装apache?如何删除已有的ap
  • CentOS下PHP安装完成后继续安装GD扩展库
  • 请教IBM服务器安装AIX的安装资料(教程或者资料,最好有安装步骤)
  • win7, win8安装docker需要了解的概念
  • 为什么安装redhat 7.1的时候没有让我配置lilo的安装而是系统默认的给我安装了--那位哥们安装过redhat7.1还望赐教
  • windows下tinyxml.dll下载安装使用(c++解析XML库)
  • 我安装的是Red Flag版本的linux,汉字输入法还没有安装,请问怎么安装?
  • tcmalloc内存泄露优化c++开源库下载,安装及使用介绍
  • 关于X库安装问题:我怎么查看我已经安装了哪些X库,并且哪些知道安装的版本号?
  • win7,win8安装Docker具体过程
  • android自动安装apk代码实例(不使用apk安装器安装)
  • php安装完成后如何添加mysql扩展


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3