2012-05-26 171 views
4

我试图在以下代码的帮助下使用Powerpoint 2010中的VBA打开Excel文件。从Powerpoint在VBA中打开Excel文件

Private Sub CommandButton1_Click() 
Dim xlApp As Excel.Application 
Set xlApp = CreateObject("Excel.Application") 

xlApp.Visible = True 

xlApp.Workbooks.Open "C:\lol\Book1.xlsx", True, False 
Set xlApp = Nothing 

Range("A8").Value = "Hello" 
End 

但我收到以下错误。编号错误 未定义用户定义类型。

我错过了什么。任何人都可以使用VBA共享示例代码片段来打开Excel文件,更改单元格值并关闭Powerpoint 2007和2010中的Excel文件。

我搜索了很多,并尝试了不同的代码段,但每次都得到相同的错误。 :(

在此先感谢:)

回答

5

您是否添加了对Excel模型的引用?这将节省您不得不使用后期绑定的对象(并且在编码时获得Intellisense帮助)。

你需要去工具 - >参考,并选中“Microsoft Excel中VX对象库”(我认为这取决于办公室的版本使用的是这个数字的变化

如果你做你的代码应该工作。如此,您还应该删除

CreateObject("Excel.Application") 

线,并与

Set xlApp = new Excel.Application 

替换它,并移动

Set xlApp = nothing 

行到你的子程序结束。

其余的代码对我来说看起来很好。

+0

非常感谢,在添加了Excel对象模型的引用后工作良好。但是,你能否给我一些示例代码,它不需要引用excel对象模型就可以工作? – Electrifyings

4

后期绑定代码将是这个

Private Sub test() 
Dim xlApp As Object 
Dim xlWorkBook As Object 

Set xlApp = CreateObject("Excel.Application") 

xlApp.Visible = True 
Set xlWorkbook = xlApp.Workbooks.Open("C:\lol\Book1.xlsx", True, False) 
xlWorkbook.sheets(1).Range("A8").Value = "Hello" 

Set xlApp = Nothing 
Set xlWorkbook = Nothing 


End Sub 

这是更好地使用早期绑定虽然。

+0

非常棒的代码伴侣 –