[大谦Excel,dqexcel点com]使用Presentations集合对象的Add方法新建演示文稿。Add方法的语法格式为:
Sub Test()
Dim pr As Presentation
Set pr = Application.Presentations.Add(WithWindow)
End Sub
其中,WithWindow是可选参数,指定文件是否可见,值为True时可见,为False时不可见,默认时可见。Application可以省略,即可以直接写成
Set pr=Presentations.Add(WithWindow)
使用Presentations集合对象的Open方法打开已经存在的演示文稿。Open方法的语法格式为:
Set pr=Presentations.Open(FileName,ReadOnly,Untitled,WithWindow)
其中,FileName是必需参数,指定字符串表示要打开的文件名。ReadOnly为可选参数,值为True时表示以只读状态打开文件,值为False时表示以可写状态打开。Untitled为可选参数,指定文件是否有标题。WithWindow参数指定文件是否可见。
下面的语句打开D盘下的PPT文件pres.pptx:
Sub Test2()
Dim pr As Presentation
Set pr = Presentations.Open("D:\test.pptx")
End Sub
下面以只读方式打开:
Set pr = Presentations.Open("D:\test.pptx", True)
当Presentations集合对象中存在多个演示文稿且需要对其中某个进行处理时,首先要从集合中找到它。找到它的过程称为演示文稿的引用。可以用演示文稿的名称进行引用,也可以用该演示文稿在集合中的索引号进行引用。
假设先后往Presentations集合中保存了演示文稿pr1和pr2,下面的语句先给pr1和pr2指定名称,然后分别用演示文稿的名称和索引号引用pr2。
Sub Test()
Dim pr1 As Presentation
Dim pr2 As Presentation
Set pr1 = Presentations(1) '用索引号引用
Debug.Print pr1.Name
Set pr2 = Presentations.Add()
pr2.Name = "pr2"
Debug.Print Presentations("pr2").Application.Name '用名称引用
End Sub
演示文稿处理完后需要保存,跟保存有关的属性和方法包括:
- pr.Saved
- pr.Save()
- pr.SaveAs ()
- pr.SaveCopyAs()
Presentation对象的Saved属性用来标识文稿自上次保存以来是否进行过修改,值为True时表示没有进行过修改,值为False时表示进行过修改。一般在保存文稿之前先用该属性进行判断,修改过才进一步保存。
使用不带参数的Save方法保存当前已经保存过的演示文稿到原目录。如果时新建文稿,使用SaveAs方法保存。先用Saved属性判断文稿是否修改过,如果修改过了,用Save方法进行保存。
使用SaveAs方法保存新建文稿,或将保存过的文稿另存为其他名称、格式或路径。该方法的语法格式为:
pr.SaveAs(FileName, FileFormat, EmbedFonts
其中,FileName为必需参数,指定文稿的保存名称。FileFormat参数可选,指定文稿的保存格式。EmbedFonts参数可选,指定是否将TrueType字体嵌入保存的演示文稿中。
下面的语句将当前演示文稿pr另存为D盘下的test.pptx:
Sub Test()
'新建文稿
Dim pr As Presentation
Set pr = Presentations.Add()
pr.SaveAs("D:\test.pptx")
End Sub
对于打开的文稿,修改后可以直接用Save方法保存。
Sub Test2()
'打开文稿,修改后保存
Dim pr As Presentation
Set pr = Presentations.Open("D:\newpr.pptx")
Dim sld As Slide
Set sld = pr.Slides.AddSlide()
If pr.Saved Then
pr.Save
End If
End Sub
如果要将文件保存为其他路径或文件名,使用SaveAs方法。
Sub Test3()
'打开文稿,保存为其他路径或名称
Dim pr As Presentation
Set pr = Presentations.Open("D:\newpr.pptx")
pr.SaveAs "C:\pr.pptx"
End Sub
使用SaveAs方法保存文稿时,会退出原来打开的文稿并打开新保存的文稿。如果不希望这样,即只是单纯地保存文稿的副本而不退出,使用SaveCopyAs方法。该方法的语法格式为:
pr.SaveCopyAs FileName, FileFormat, EmbedTrueTypeFonts
其中各参数的意义与SaveAs方法的相同。
下面的语句只保存当前演示文稿pr的一个副本到D盘下的test.pptx,当前文稿不退出:
pr.SaveCopyAs "C:\pr.pptx"