读注册表!HKEY_CURRENT_USER\Software\Microsoft\Office\8.0如果存在
则用Create("PowerPoint.Application.8")//用于Office 97
如果HKEY_CURRENT_USER\Software\Microsoft\Office\9.0如果存在则用
Create("PowerPoint.Application.9")//用于Office 2000
则用Create("PowerPoint.Application.8")//用于Office 97
如果HKEY_CURRENT_USER\Software\Microsoft\Office\9.0如果存在则用
Create("PowerPoint.Application.9")//用于Office 2000
你好!可是我用Create("PowerPoint.Application.9")时,根本不能启动OFFICE200,这是为什么?
你好!可是我用Create("PowerPoint.Application.9")时,根本不能启动OFFICE200,这是为什么?我已在工程引用中钩选PowerPoint9,出错报PowerPoint9框架不存在。
应该是这样的
Dim oPowerPoint as Object '定义为一个公有变量
sub Startup()
set oPowerPoint = CreateObject("PowerPoint.Application.9")
' 如果是office97 就是"PowerPoint.Application.8"
oPowerPoint.Visible = True '使你启动的自动化服务器可视
'.................
'你就可一通过oPowerPoint来操作你启动的PowerPoint对象了
end sub
CreateObject("PowerPoint.Application.9") sorry :)
Function Showsild(SildeName As String)
If CreatSilde > 1 Then
'当多次调用函数后会出现内存不够的现象,不知道什么原因,可删除进程。
Set ppobj = Nothing
Set ppPres = Nothing
Set ppobj = GetObject(, "PowerPoint.Application.8")
Set ppPres = ppobj.Presentations.Open(SildeName)
ppPres.SlideShowSettings.Run
Else
Set Obj = Nothing
Set Pres = Nothing
Dim xloop As Integer
On Error Resume Next
Set Obj = GetObject(, "PowerPoint.application.8")
If Err.Number Then
Set Obj = CreateObject("PowerPoint.Application.8")
Err.Clear
End If
On Error GoTo err_cmdOLEPowerPoint
Set Pres = Obj.Presentations.Add
Set Pres = Obj.Presentations.Open(SildeName)
Pres.SlideShowSettings.Run
'err_cmdOLEPowerPoint:
' MsgBox Err.Number & " " & Err.DescriptionEnd If
Exit Function
err_cmdOLEPowerPoint:
MsgBox Err.Number & " " & Err.Description
End Function
(只是把 obj.Visible = true 而已,你可以将第一个错误捕获注掉)试了一下。发现你的程序
没问题呀!(一定要把"PowerPoint.Application.8"改为"PowerPoint.Application.9" )