欢迎光临
我们一直在努力

使用VB.NET编写控制excel的程序-.NET教程,VB.Net语言

建站超值云服务器,限时71元/月

 

使用vb.net编写控制excel的程序

 

以前也总是编写一些excel下的vba程序,也就几百行代码便可以基本上解决问题。从来没有使用过vc或者vbdelphi来做此类事情。我想如果做报表的话,相对规模和功能都要多一些,这应该算是excel开发的重点。

 

这次使用了vb.net开发一个访问excel读取数据并修改的小程序,有一些经验性的东西和大家共享,如果有误还请大家指正。

 

大致分为这样几个部分来说明:

1、   准备部分:

准备部分我们需要添加excel library的引用到工程中:我使用office2003,它的库文件为 microsoft excel 11.0 object library。如果使用excel2000,那么它使用的是microsoft excel 9.0 object library

有需要时,我们添加imports 命名空间。

我在这个程序中只是访问了excel的数据,不需要命名空间了哈。

 

2、   声明一些对象:

这些对象并不是都需要,前面三个应该有,后面的,你需要什么对象就声明:

dim excelapp as excel.application          声明一个application对象

dim excelworkbook as excel.workbook 声明一个工作簿对象

dim excelsheet as excel.worksheet      声明一个工作表对象

等等如:

dim excelrange as excel.range        声明一个范围对象

 

3、   访问一个excel文件:

excelapp = new excel.application

excelworkbook = excelapp.workbooks.open(strfile) ‘访问到工作簿:这个strfile 是文件的路径,我从打开文件对话框中得到的。

excelsheet = excelworkbook.sheets.item(1)   访问到工作表:item使用索引值来得到sheet对象的引用

excelsheet.activate

我们可以得到此文件中的值:

定义一个string变量:

dim strcellvalue as string

strcellvalue=excelsheet.cells(1,1).value ‘得到a1单元格的内容。

修改的时候反过来就可以了:

excelsheet.cells(1,1).value= strcellvalue

 

4、   善后:

在程序的每一个退出口操作excel对象,保存或者不保存:

excelworkbook.save

excelworkbook.close

excelapp=nothing

 

5其它:

需要注意~上面的代码需要一些容错机制,比如:

if not excelworkbook is nothing then 这样的话来达到程序的正确运行

需要判断现在excel又没有打开。如果有excel进程正在运行。你的代码很可能会影响到打开的excel,像excelworkbook.close这样的语句虽然前面已经很好的唯一指定了工作簿,但不能很武断的进行鲁莽的操作,我们需要判断现在excel的运行情况。

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » 使用VB.NET编写控制excel的程序-.NET教程,VB.Net语言
分享到: 更多 (0)