1

Excelファイルからのいくつかの画像で構成される新しいパワーポイントを作成するコードがあります。文字列変数を使用してファイルを保存し、その名前を定義したいと思います。私は成功せずに解決策を探すためにデューデリジェンスを行いました。これは、私が完了しようとしているタスクの基本性に基づいて私を驚かせます。今のところ、私は...

newPowerPoint.ActivePresentations.SaveAs filenamestring, 1
newPowerPoint.ActivePresentations.Close

しかし、私はたくさんのエラーメッセージを受け取り続けています。newPowerPointを別のモジュールでパブリックとして定義しています

Public newPowerPoint As powerpoint.Application

助言がありますか?

4

1 に答える 1

2

Powerpoint.Applicationのインスタンスを実際に作成せずに、変数oPPTAppのディメンションを作成していると思います。

Public ppApp As PowerPoint.Application

Sub PPTFile()

Dim ppPres As Presentation
Dim fileNameString As String

fileNameString = "C:\testPPT.pptx" '<change to your file path/name

'Create an instance of PPT to work with
Set ppApp = CreateObject("Powerpoint.Application")
ppApp.Visible = True

'Create a new presentation (or you can access an existing file with ppApp.Presentations.Open
Set ppPres = ppApp.Presentations.Add

'Save:
ppPres.SaveAs fileNameString, 1

'Quit the instance of PPT that you initiated above.
ppApp.Quit

End Sub

編集

AddSlideメソッドを使用してスライドを追加する場合は、を参照する必要がありますCustomLayout

Dim sldCount As Integer

sldCount = ppPres.Slides.count
ppPres.Slides.AddSlide sldCount + 1, ppPres.Slides(sldCount).CustomLayout
'Once you've added the slide, then set using Layout:
ppPres.Slides(sldCount + 1).Layout = ppLayoutBlank

または、 (CustomLayoutが必要)の代わりに、引数.Addを受け入れる古いメソッドを使用できます。Layout.AddSlide

ppPres.Slides.Add sldCount + 1, ppLayoutBlank

于 2013-03-25T18:06:44.110 に答える