http://www.accessoft.com/article-show.asp?id=3776
OFFICE是由ACCESS、EXCEL、WORD等应用程序软件的集合成的软件,我们把每个软件也称之组件或是应用程序,各应用程序的最上层对象为 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