1

次の方法で R から PowerPoint サブルーチンを実行する必要があります。

shell(shQuote(normalizePath("C:/.../VBA_Script.vbs"))). 

スクリプトは、 msgbox bank J. P. Morgan`)VBA_Scriptという名前のサブをトリガーする必要があります。request_bank, which should open awith the value of the variable(=

エラーが発生します:

Application.Run: 無効な要求です。サブまたは関数が定義されていません。コード: 80048240、MS PowerPoint 2013。

このスレッドRun PowerPoint Sub from Excelに記載されているさまざまな Run.-Paths をすべて試しました。それでもエラーが発生します。同じ Sub を Excel で実行したり、行を追加したりすると、同じコードが機能するのはなぜでしょうか。

Dim PSlide
Set PSlide = PPres.Slides(1).Duplicate

しかし、それは私にとって明確な解決策ではありません。もっと良い方法があるはずです。

VBS-Script: Option Explicit

CallPMacro

Sub CallPMacro() 

Dim PApp   
Dim PPres
'Dim PSlide

Set PApp = CreateObject("PowerPoint.Application") 
Set PPres = PApp.Presentations.Open("C:\...\test.pptm", 0, True) 
'Set PSlide = PPres.Slides(1).Duplicate
PApp.Visible = True
PApp.Run "request_bank"
PApp.Quit 

Set PPres = Nothing 
Set PApp = Nothing 

End Sub 

のサブからの VBArequest_bankコードtest.pptm:

Sub request_bank()
Dim bank As String
bank = "J.P. Morgan"
MsgBox ("bank: " & bank)
End Sub

それを修正する方法はありますか?

4

0 に答える 0