vb操作excel及宏操作

vb操作excel及宏操作


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条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信