2012-05-26 202 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

非常棒的代碼伴侶 –