如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
浪曦网-国内顶级IT视频网络编程教育平台Www.LangSin.Com如何在C#中调用Excel该文档由国内顶级IT视频教育平台浪曦网整理发布1.调用Excel的COM组件。在项目中打开AddReference对话框,选择COM栏,之后在COM列表中找到"MicrosoftExcel11.0ObjectLibrary"(Office2003),然后将其加入到项目的References中即可。VisualC#.NET会自动产生相应的.NET组件文件,以后即可正常使用。2.打开Excel表格Excel.Applicationexcel=newExcel.Application();//引用Excel对象Excel.Workbookbook=excel.Application.Workbooks.Add(Missing.Value);//引用Excel工作簿excel.Visible=bVisible;//使Excel可视有时调用excel.Application.Workbooks.Add(Missing.Value)会遇到如下错误:Exception:Oldformatorinvalidtypelibrary.(ExceptionfromHRESULT:0x80028018(TYPE_E_INVDATAREAD))这是Excel自身的一个bug,当本地系统环境被设置成非英文的,而Excel是英文的时候,就会出现,需要临时设定英文环境,代码如下:System.Globalization.CultureInfoCurrentCI=System.Threading.Thread.CurrentThread.CurrentCulture;System.Threading.Thread.CurrentThread.CurrentCulture=newSystem.Globalization.CultureInfo("en-US");3.往Excel表格中插入数据Excel.Worksheetsheet=(Excel.Worksheet)book.Worksheets["Sheet1"];//选中当前新建Sheet(一般为Sheet1)有两种插入方法a.逐格插入数据sheet.Cells[iRow,iCol]=value;//左上角第一格的坐标是[1,1]b.按块插入数据object[,]objVal=newobject[Height,Length];//设置数据块Excel.Rangerange=sheet.get_Range(sheet.Cells[iRow,iCol],sheet.Cells[iRow+Height,iCol+Length])range.Value2=objVal;4.清理内存和恢复环境System.Runtime.InteropServices.Marshal.ReleaseComObject(range);System.Runtime.InteropServices.Marshal.ReleaseComObject(sheet);浪曦网-国内顶级IT视频网络编程教育平台Www.LangSin.Com浪曦网-国内顶级IT视频网络编程教育平台Www.LangSin.ComSystem.Runtime.InteropServices.Marshal.ReleaseComObject(book);while(System.Runtime.InteropServices.Marshal.ReleaseComObject(excel)>0);range=null;sheet=null;book=null;excel=null;GC.Collect();System.Threading.Thread.CurrentThread.CurrentCulture=CurrentCI;浪曦网-国内顶级IT视频网络编程教育平台Www.LangSin.Com