通过VBScript在Powerpoint中打开用户表单
我正在尝试打开一个用户表单,该表单是我通过VBScript在PPTM文件中创建的。VB脚本的代码如下所示。这似乎确实奏效了。只需打开并关闭宏PPTM。有什么建议吗通过VBScript在Powerpoint中打开用户表单,vbscript,powerpoint,Vbscript,Powerpoint,我正在尝试打开一个用户表单,该表单是我通过VBScript在PPTM文件中创建的。VB脚本的代码如下所示。这似乎确实奏效了。只需打开并关闭宏PPTM。有什么建议吗 Option Explicit Dim pptApp, pptPresentation, CurrentDirectory dim fso: set fso = CreateObject("Scripting.FileSystemObject") CurrentDirectory = fso.GetAbsolutePathNam
Option Explicit
Dim pptApp, pptPresentation, CurrentDirectory
dim fso: set fso = CreateObject("Scripting.FileSystemObject")
CurrentDirectory = fso.GetAbsolutePathName(".")
Set pptApp = CreateObject("PowerPoint.Application")
Set pptPresentation = pptApp.Presentations.Open(CurrentDirectory + "\Revison Macro V1.pptm",True)
On Error Resume Next
pptApp.Run "Revision"
If Err Then
End If
pptPresentation.Close
pptApp.Quit
Set pptPresentation = Nothing
Set pptApp = Nothing
WScript.Quit
一些代码修订
Set-pptPresentation=pptApp.Presentations.Open(CurrentDirectory+“\Revison Macro V1.pptm”,True)
>>VBScript使用“&”而不是“+”,即使这样做效果很好,最好还是坚持正确的字符串处理方式李>
Sub
,并将其称为“call_Revision”。代码将简单明了,如下所示:
Sub Call_Revision
Revision.Show
End Sub
.Run
命令时,它需要知道如何找到运行UserForm的代码。现在我们已经建立了sub,我们可以用它来显示表单
发件人:pptApp.Run“Revision”
至:pptApp.Run“Revison Macro V1.pptm!Module1.Call\u Revision”
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
Application.Quit
End Sub
完整代码:
Option Explicit
Dim currppt : currppt = "Revison Macro V1.pptm"
Dim ModuleName: ModuleName = "Module1"
Dim OpenUF : OpenUF = "Call_Revision"
Dim pptApp, pptPresentation, CurrentDirectory
dim fso: set fso = CreateObject("Scripting.FileSystemObject")
CurrentDirectory = fso.GetAbsolutePathName(".")
Set pptApp = CreateObject("PowerPoint.Application")
Set pptPresentation = pptApp.Presentations.Open(CurrentDirectory & "\" & currppt,True)
On Error Resume Next
pptApp.Run currppt & "!" & ModuleName & "." & OpenUF
msgbox "Done"
pptPresentation.Close
pptApp.Quit
Set pptPresentation = Nothing
Set pptApp = Nothing
我猜你的意思是说它不工作,对吗?@PhilipAllgaier:是的,它工作不正常。它应该显示我在PPTM文件中创建的用户表单。但事实并非如此。有什么建议吗?那么请编辑你的问题,因为现在它说的是不同的东西。@HarshitPandey我的回答对你有帮助吗?