HOWTO: Automate PowerPoint Using Visual FoxProID: Q230154
|
This article demonstrates how to automate Microsoft PowerPoint using Visual FoxPro 6.0.
By using automation in PowerPoint, you can programmatically print, display slides, and do most of the things you can do interactively. Follow these steps to build and run a Visual FoxPro automation example:
* Start PowerPoint
PptApp = CreateObject("Powerpoint.Application")
* Add a presentation
PptPres = PptApp.Presentations.Add(1)
* Add a slide
PptSlide1 = PptPres.Slides.Add(1,2)
* Add some text...
PptSlide1.Shapes(1).TextFrame.TextRange.Text = "My first slide"
PptSlide1.Shapes(2).TextFrame.TextRange.Text = "Automating Powerpoint is easy" + Chr(13) + "Using FoxPro is fun!"
* Add another slide, with a chart
PptSlide2 = PptPres.Slides.Add(2,5)
* Add some text
PptSlide2.Shapes(1).TextFrame.TextRange.Text = "Slide 2's topic"
PptSlide2.Shapes(1).TextFrame.TextRange.Text = "You can create and use charts in your Powerpoint slides!"
* Add a chart where the old one is...
With PptSlide2.Shapes(3)
cTop = .Top
cWidth = .Width
cHeight = .Height
cLeft = .Left
.Delete
EndWith
PptSlide2.Shapes.AddOLEObject(cLeft, cTop, cWidth, cHeight, "MSGraph.Chart")
* Add another slide, with an Organization chart
PptSlide3 = PptPres.Slides.Add(3,7)
* Add some text
PptSlide3.Shapes(1).TextFrame.TextRange.Text = "The rest is only limited by your Imagination"
* Add an Org chart where old one is...
With PptSlide3.Shapes(2)
cTop = .Top
cWidth = .Width
cHeight = .Height
cLeft = .Left
.Delete
EndWith
PptSlide3.Shapes.AddOLEObject(cLeft, cTop, cWidth, cHeight, "OrgPlusWOPX.4")
* Setup slide show properties...
With PptPres.Slides.Range.SlideShowTransition
.EntryEffect = 513
.AdvanceOnTime = 1
.AdvanceTime = 5
EndWith
* Prepare and run slide-show!
With PptPres.SlideShowSettings
.ShowType = 3
.LoopUntilStopped = 1
.RangeType = 1
.AdvanceMode = 2
.Run
EndWith
* Sleep so user can watch the show...
Wait window "Waiting for slide show to finish..." TIMEOUT 16
* Stop the slide show
PptPres.SlideShowWindow.View.Exit
* Clean up
PptApp.Quit
Release PptSlide3
Release PptSlide2
Release PptSlide1
Release PptPres
Release PptApp
© Microsoft Corporation 1999, All Rights Reserved.
Contributions by Joe Crump, Microsoft Corporation
Additional query words:
Keywords : kbAutomation kbVFp kbVFp600 kbPowerPt kbGrpDSO
Version : WINDOWS:2000,6.0,97
Platform : WINDOWS
Issue type : kbhowto
Last Reviewed: May 24, 1999