注册 登录
Office中国论坛/Access中国论坛 返回首页

tanhong的个人空间 http://www.office-cn.net/?49992 [收藏] [复制] [分享] [RSS]

日志

ACCESS中操作EXCEL对象讲解

热度 3已有 4428 次阅读2009-8-30 22:03 |个人分类:ACCESS作品|

  OFFICE是由ACCESSEXCELWORD应用程序软件的集合成软件,我们把每个软件也应称之组件或是应用程序,各应用程序的最上层对象为 Application对象,我们就是通过该对象来实现与Office其它各应用程序进行交流的。

  我们在ACCESS中操作EXCEL对象,首先建立一个Excel.Application 对象,就可以象在EXCEL中进行编程一样,在ACCESS实现对EXCEL对象的操作。

1.引用EXCEL项目库名

  要实现对EXCEL对象的操作,我们必须引用当前版本的EXCEL项目库,以2003版为例,引用的EXCEL项目库名为:Microsoft Excel 11.0 Object Library,具体操作步骤如下:

2.录制宏代码
  这一步骤主要是针对EXCEL代码不是很熟的朋友,当然对于有一定功底的EXCEL朋友,也可以通过录制来完成代码书,这样可以提高一定的工作效率,还可以在EXCEL中校验一下代码正确与否。

说明:如果你对于书写EXCEL对象操作代码已经具备的实足的把握,你可以直接跳到下一小节,而不必在本小节浪费时间
 
  实例演示EXCEL中完成所述操作:在Shee1单元A1输入字符串“江羽ACCESS中操作EXCEL对象演示!”,设定字体的字号:16,字体:仿宋加粗,颜色为:橙色。

宏录制过程如下:


录制完后整理好的有效代码如下:

    ActiveCell.FormulaR1C1 = "江羽ACCESS中操作EXCEL对象演示!"

    With Selection.Font

        .Name = "仿宋_GB2312"

        .Size = 16

        .Bold = True

        .ColorIndex = 46

    End With

 

说明:以上代码将是我们下一步要放在ACCESS中使用的EXCEL对象操作代码。为了了解每句代码的意义,你可以VBE窗口中按F8来逐句调试,对于没有用的代码可以删除。

 

3.Access使用Excel对象

为了在ACCESS中使用EXCEL对象,我们在此之前引用了EXCEL对象类库,但仅仅是引用了类库我们还不能直接操作EXCEL对象,我们还必须在EXCEL代码中申明并实例化EXCEL应用程序Application对象。

 

3.1设置EXCEL的应用程序对象方法

我们可以通过两种方式来定义或设置EXCEL应程序对象给自定义的对象变量,方法如下:

  •        使用New关键字

Dim xlApp As New Excel.Application

  •        使用CreateObject函数

Dim xlApp As Excel.Application

Set xlApp = CreateObject("Excel.Application")

特别说明:

如果EXCEL处于打开状态,或是已在执行中,可以使用GetObject函数直接将定义的XlApp对象设置为当前EXCEL应用程序对象,如下:

Dim xlApp As Excel.Application

Set xlApp =GetObject(, "Excel.Application")

 
3.2 创建EXCEL对象实例演示

ACCESS新建一个窗体FrmMain ,创建一个按钮命名: CmdRun ,设定按钮的标题Caption属性为:演示,在按钮单击 [事件] 中加入用以运行演示过程代码。

 

过程代码:

Sub OpenXlApp()

     Dim xlApp As Excel.Application   '申明EXCEL应用程序对象

    '设置应用程序对象实例

    Set xlApp = CreateObject("Excel.Application")

    xlApp.Visible = True    '显示EXCEL应用程序

    xlApp.Workbooks.Add  '新增一个EXCEL工作簿

   

   '以下部分为EXCEL录制宏录制整理后所得代码

    ActiveCell.FormulaR1C1 = "江羽ACCESS中操作EXCEL对象演示!"

    With Selection.Font

        .Name = "仿宋_GB2312"

        .Size = 16

        .Bold = True

        .ColorIndex = 46

    End With

    '退应用程序并释放内存

    xlApp.Quit

    Set xlApp = Nothing

End Sub

 

 

3.3 操作指定的EXCEL对象实例演示

打开一个已有的EXCEL工作簿,实例假定文件名为 MyBook.xls EXCEL文件存放在C盘中,并完成在该工作簿中A1单元格中写入如之前实例中格式的字符串。

过程代码:

 

Sub OpenxlBook()

 '申明EXCEL应用程序对象并加入New关键字实例化对象

    Dim xlApp As New Excel.Application

 '申明EXCEL工作簿对象

    Dim xlBook As Excel.Workbook

  '设置工作簿对象为指定的工作簿

  Set xlBook = xlApp.Workbooks.Open("C:\mybook.xls")

    xlApp.Visible = True  '显示EXCEL应用程序

 

    '以下部分为EXCEL录制宏录制整理后所得代码

    ActiveCell.FormulaR1C1 = "江羽ACCESS中操作EXCEL对象演示!"

    With Selection.Font

        .Name = "仿宋_GB2312"

        .Size = 16

        .Bold = True

        .ColorIndex = 46

    End With

  

   '退应用程序并释放内存

   xlApp.Quit

   Set xlApp = Nothing

End Sub

 

 

(全文结束) 

刚表态过的朋友 (0 人)

发表评论 评论 (2 个评论)

回复 lovesorare 2009-9-16 19:11
路过!
回复 roych 2010-11-27 14:12
应该写上Err语句以便GetObject的运行。
IF Err=429 then……

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 注册

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-4-20 14:41 , Processed in 0.068757 second(s), 18 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

返回顶部