vb.net制作表格 vbnet writeline( 二 )


Set xlSheet = xlBook.Worksheets("表名") '设置活动工作表
xlSheet.Cells(row, col) =值 '给单元格(row,col)赋值
xlSheet.PrintOut '打印工作表
xlBook.Close (True) '关闭工作簿
xlApp.Quit '结束EXCEL对象
Set xlApp = Nothing '释放xlApp对象
xlBook.RunAutoMacros (xlAutoOpen) '运行EXCEL启动宏
xlBook.RunAutoMacros (xlAutoClose) '运行EXCEL关闭宏
4、在运用以上VB命令操作EXCEL表时,除非设置EXCEL对象不可见,否则VB程序可继续执行其它操作 , 也能够关闭EXCEL,同时也可对EXCEL进行操作 。但在EXCEL操作过程中关闭EXCEL对象时,VB程序无法知道,如果此时使用EXCEL对象 , 则VB程序会产生自动化错误 。形成VB程序无法完全控制EXCEL的状况 , 使得VB与EXCEL脱节 。
二、 EXCEL的宏功能:
EXCEL提供一个Visual Basic编辑器 , 打开Visual Basic编辑器,其中有一工程属性窗口,点击右键菜单的"插入模块",则增加一个"模块1",在此模块中可以运用Visual Basic语言编写函数和过程并称之为宏 。其中,EXCEL有两个自动宏:一个是启动宏(Sub Auto_Open()),另一个是关闭宏(Sub Auto_Close()) 。它们的特性是:当用EXCEL打含有启动宏的工簿时 , 就会自动运行启动宏 , 同理,当关闭含有关闭宏的工作簿时就会自动运行关闭宏 。但是通过VB的自动化功能来调用EXCEL工作表时,启动宏和关闭宏不会自动运行,而需要在VB中通过命令xlBook.RunAutoMacros (xlAutoOpen)和xlBook.RunAutoMacros (xlAutoClose) 来运行启动宏和关闭宏 。
三、 VB与EXCEL的相互勾通:
充分利用EXCEL的启动宏和关闭宏,可以实现VB与EXCEL的相互勾通,其方法如下:
在EXCEL的启动宏中加入一段程序 , 其功能是在磁盘中写入一个标志文件,同时在关闭宏中加入一段删除此标志文件的程序 。VB程序在执行时通过判断此标志文件存在与否来判断EXCEL是否打开 , 如果此标志文件存在,表明EXCEL对象正在运行,应该禁止其它程序的运行 。如果此标志文件不存在,表明EXCEL对象已被用户关闭 , 此时如果要使用EXCEL对象运行,必须重新创建EXCEL对象 。
四、举例:
1、在VB中,建立一个FORM , 在其上放置两个命令按钮,将Command1的Caption属性改为EXCEL,Command2的Caption属性改为End 。然后在其中输入如下程序:
Dim xlApp As Excel.Application '定义EXCEL类
Dim xlBook As Excel.Workbook '定义工件簿类
Dim xlsheet As Excel.Worksheet '定义工作表类
Private Sub Command1_Click() '打开EXCEL过程
If Dir("D:\temp\excel.bz") = "" Then '判断EXCEL是否打开
Set xlApp = CreateObject("Excel.Application") '创建EXCEL应用类
xlApp.Visible = True '设置EXCEL可见
Set xlBook = xlApp.Workbooks.Open("D:\temp\bb.xls") '打开EXCEL工作簿
Set xlsheet = xlBook.Worksheets(1) '打开EXCEL工作表
xlsheet.Activate '激活工作表
xlsheet.Cells(1, 1) = "abc" '给单元格1行驶列赋值
xlBook.RunAutoMacros (xlAutoOpen) 运行EXCEL中的启动宏
Else
MsgBox ("EXCEL已打开")
End If
End Sub
Private Sub Command2_Click()
If Dir("D:\temp\excel.bz")"" Then '由VB关闭EXCEL
xlBook.RunAutoMacros (xlAutoClose) '执行EXCEL关闭宏
xlBook.Close (True) '关闭EXCEL工作簿
xlApp.Quit '关闭EXCEL
End If
Set xlApp = Nothing '释放EXCEL对象
End
End Sub
2、在D盘根目录上建立一个名为Temp的子目录,在Temp目录下建立一个名为"bb.xls"的EXCEL文件 。
3、在"bb.xls"中打开Visual Basic编辑器 , 在工程窗口中点鼠标键选择插入模块,在模块中输入入下程序存盘:
Sub auto_open()

推荐阅读