从.ppt幻灯片中提取信息

时间:2009-10-05 00:49:05

标签: ms-access vba powerpoint ms-access-2003 powerpoint-vba

如果我有一张.ppt张幻灯片,我想从中提取信息,并为所有这些幻灯片设置了模板,这些幻灯片供各个人在整个组织中使用,我知道所有的“名字” “到每个文本框对象,

我可以使用某些vb将这些信息从.ppt幻灯片中提取到访问数据库中吗?

我知道如何获取访问表单并以相同的方式创建带有输入信息的ppt演示文稿,只需要反向处理。所以我假设如果我设置这些ppt幻灯片,并将所有文本框命名为我想要命名的那些,我应该能够以相反的方向执行此操作,对吧?

1 个答案:

答案 0 :(得分:6)

是的,您可以执行相反的操作,并且可以访问powerpoint幻灯片。我创建了一个带有两个幻灯片的powerpoint 2007演示文稿,一个标题幻灯片和一个内容幻灯片。在一个空访问2007 db中,我添加了一个带有以下测试的代码模块。您还需要在Access VBA项目中为powerpoint对象添加一个refrenence。

Public Sub ImportPowerPoint()
    Dim app As PowerPoint.Application
    Dim pres As PowerPoint.Presentation
    Dim ps As PowerPoint.Presentations
    Set app = New PowerPoint.Application
    app.Activate
    Set pres = app.Presentations.Open("C:\Temp\title slide.pptx")
    Debug.Print pres.Slides(1).Shapes(1).Name & " " & pres.Slides(1).Shapes(1).TextEffect.Text
    Debug.Print pres.Slides(1).Shapes(2).Name & " " & pres.Slides(1).Shapes(2).TextEffect.Text
    Debug.Print pres.Slides(2).Shapes(1).Name & " " & pres.Slides(2).Shapes(1).TextEffect.Text
    Debug.Print pres.Slides(2).Shapes(2).Name & " " & pres.Slides(2).Shapes(2).TextEffect.Text
End Sub

您所关注的文本包含在与形状对象关联的TextEffect对象中。

希望这会有所帮助(对不起,我没有2003办公室,但应该非常相似)