2024年5月24日发(作者:)
vB是常用的应用软件开发工具之一,由于VB的报表功能有限,而且一但报表格式发生变
化,就得相应修改程序,给应用软件的维护工作带来极大的不便。因此有很多程序员现在已
经充分利用EXECL的强大报表功来实现报表功能。但由于VB与EXCEL由于分别属于不
同的应用系统,如何把它们有机地结合在一起,是一个值得我们研究的课题。
一、VB读写EXCEL表:
能获取到表的行数的代码:
VB本身提自动化功能可以读写EXCEL表,其方法如下:
1、在工程中引用Microsoft Excel类型库:
从"工程"菜单中选择"引用"栏;选择Microsoft Excel 9.0 Object Library(EXCEL2000),
然后选择"确定"。表示在工程中要引用EXCEL类型库。
2、在通用对象的声明过程中定义EXCEL对象:
Dim xlApp As ation
Dim xlBook As ok
Dim xlSheet As eet
3、在程序中操作EXCEL表常用命令:
Set xlApp = CreateObject("ation") '创建EXCEL对象
Set xlBook = ("文件名") '打开已经存在的EXCEL工件簿文件
e = True '设置EXCEL对象可见(或不可见)
Set xlSheet = eets("表名") '设置活动工作表
(row, col) =值'给单元格(row,col)赋值
ut '打印工作表
(True) '关闭工作簿
'结束EXCEL对象
Set xlApp = Nothing '释放xlApp对象
oMacros (xlAutoOpen) '运行EXCEL启动宏
oMacros (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中通过命令oMacros (xlAutoOpen)和oMacros
(xlAutoClose)来运行启动宏和关闭宏。
Set xlApp = CreateObject("ation") '创建EXCEL对象
Set xlBook = ( & "文件名.xls") '打开已经存在的EXCEL工件
簿文件
e = True '设置EXCEL对象可见(或不可见)
Set xlSheet = eets("sheel1") '设置活动工作表,sheet1表示表名,可以使用字符
型变量代替。
te '激活工作表,让它处于前台活动中。
oMacros (xlAutoOpen) '运行自动开启宏Macro1(),在EXCEL中加入以下宏
'Sub auto_open() '这是VBA中的自动打开时运行的宏
'您要宏自动运行的程序,比如可以call其它的宏,这样VB在打开EXCEL时,使用上面的
语句就可以先运行这个宏
'End Sub
(行数,列数) =值'给EXCEL对象中的表的单元格附值。
("7:7").Select '选定EXCEL表的第7行
shift:=xlUp '删除选定的行
(7).Insert '在第7行处插入一行
Header ="页眉内容" '给页眉附值
("f7:h7").Select '选定f7:h7之间的单元格,下面的程序是把它们合并。
yMode = False
With ion
.HorizontalAlignment = xlGeneral
.VerticalAlignment = xlCenter
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = True
End With
如果有自己不会的可以用录制宏的办法,用手功操作一次你要的功能,然后看录下的宏程序,
VBA中的宏程序几乎所有的宏在VB中都可以直接使用,关键是对象一定要搞清楚。
VB操作EXCEL的介绍
全面控制Excel
首先创建Excel对象,使用ComObj:
Dim ExcelID as ation
Set ExcelID as new ation
1)显示当前窗口:
e := True;
2)更改Excel标题栏:
n := '应用程序调用Microsoft Excel';
3)添加新工作簿:
;
4)打开已存在的工作簿:
( 'C:' );
5)设置第2个工作表为活动工作表:
eets[2].Activate;
发布者:admin,转转请注明出处:http://www.yc00.com/web/1716523113a2728155.html
评论列表(0条)