Automatisering gebruiken om een PowerPoint-presentatie te maken en weer te geven met behulp van Visual Basic .NET 2002 of Visual Basic .NET 2003

Samenvatting

In dit artikel wordt beschreven hoe u automatisering gebruikt om een Microsoft PowerPoint-presentatie te maken en weer te geven met behulp van Microsoft Visual Basic .NET 2002 of Visual Basic .NET 2003.

Meer informatie

Een automatiseringsclient maken voor Microsoft PowerPoint

  1. Start Microsoft Visual Studio .NET 2002 of Visual Studio .NET 2003. Klik in het menu Bestand op Nieuw en klik vervolgens op Project. Selecteer Windows-toepassing in de Visual Basic Projects-typen. Form1 wordt standaard gemaakt.

  2. Voeg een verwijzing toe naar de Microsoft PowerPoint-objectbibliotheek en de Microsoft Graph-objectbibliotheek. Ga hiervoor als volgt te werk:

    1. Klik in het menu Project op Verwijzing toevoegen.
    2. Zoek op het tabblad COM de Microsoft PowerPoint-objectbibliotheek en klik op Selecteren. Zoek ook de Microsoft Graph-objectbibliotheek en klik op Selecteren.

    Opmerking Microsoft Office 2003 en latere versies van Microsoft Office bevatten primaire interop-assembly's (PIA's). Microsoft Office XP bevat geen PIA's, maar deze kunnen wel worden gedownload.

  3. Klik op OK in het dialoogvenster Verwijzingen toevoegen om uw selecties te accepteren.

  4. Selecteer Werkset in het menu Weergave om de werkset weer te geven en voeg een knop toe aan Formulier1.

  5. Dubbelklik op Knop1. Het codevenster voor het formulier wordt weergegeven.

  6. Zoek in het codevenster de volgende code

        Private Sub Button1_Click(ByVal sender As System.Object, _
            ByVal e As System.EventArgs) Handles Button1.Click
    
    End Sub
    
    

    Vervang door de volgende code:

        Private Sub Button1_Click(ByVal sender As System.Object, _
            ByVal e As System.EventArgs) Handles Button1.Click
    
    Const sTemplate = _
               "C:\Program Files\Microsoft Office\Templates\Presentation Designs\Blends.pot"
            Const sPic = "C:\WINNT\Soap Bubbles.bmp"
    
    Dim oApp As PowerPoint.Application
            Dim oPres As PowerPoint.Presentation
            Dim oSlide As PowerPoint.Slide
            Dim bAssistantOn As Boolean
    
    'Start Powerpoint and make its window visible but minimized.
            oApp = New PowerPoint.Application()
            oApp.Visible = True
            oApp.WindowState = PowerPoint.PpWindowState.ppWindowMinimized
    
    'Create a new presentation based on the specified template.
            oPres = oApp.Presentations.Open(sTemplate, , , True)
    
    'Build Slide #1:
            'Add text to the slide, change the font and insert/position a 
            'picture on the first slide.
            oSlide = oPres.Slides.Add(1, PowerPoint.PpSlideLayout.ppLayoutTitleOnly)
            With oSlide.Shapes.Item(1).TextFrame.TextRange
                .Text = "My Sample Presentation"
                .Font.Name = "Comic Sans MS"
                .Font.Size = 48
            End With
            oSlide.Shapes.AddPicture(sPic, False, True, 150, 150, 500, 350)
            oSlide = Nothing
    
    'Build Slide #2:
            'Add text to the slide title, format the text. Also add a chart to the
            'slide and change the chart type to a 3D pie chart.
            oSlide = oPres.Slides.Add(2, PowerPoint.PpSlideLayout.ppLayoutTitleOnly)
            With oSlide.Shapes.Item(1).TextFrame.TextRange
                .Text = "My Chart"
                .Font.Name = "Comic Sans MS"
                .Font.Size = 48
            End With
            Dim oChart As Graph.Chart
            oChart = oSlide.Shapes.AddOLEObject(150, 150, 480, 320, _
                        "MSGraph.Chart.8").OLEFormat.Object
            oChart.ChartType = Graph.XlChartType.xl3DPie
            oChart = Nothing
            oSlide = Nothing
    
    'Build Slide #3:
            'Add a text effect to the slide and apply shadows to the text effect.
            oSlide = oPres.Slides.Add(3, PowerPoint.PpSlideLayout.ppLayoutBlank)
            oSlide.FollowMasterBackground = False
            Dim oShape As PowerPoint.Shape
            oShape = oSlide.Shapes.AddTextEffect(Office.MsoPresetTextEffect.msoTextEffect27, _
                "The End", "Impact", 96, False, False, 230, 200)
            oShape.Shadow.ForeColor.SchemeColor = PowerPoint.PpColorSchemeIndex.ppForeground
            oShape.Shadow.Visible = True
            oShape.Shadow.OffsetX = 3
            oShape.Shadow.OffsetY = 3
            oShape = Nothing
            oSlide = Nothing
    
    'Modify the slide show transition settings for all 3 slides in
            'the presentation.
            Dim SlideIdx(3) As Integer
            SlideIdx(0) = 1
            SlideIdx(1) = 2
            SlideIdx(2) = 3
            With oPres.Slides.Range(SlideIdx).SlideShowTransition
                .AdvanceOnTime = True
                .AdvanceTime = 3
                .EntryEffect = PowerPoint.PpEntryEffect.ppEffectBoxOut
            End With
            Dim oSettings As PowerPoint.SlideShowSettings
            oSettings = oPres.SlideShowSettings
            oSettings.StartingSlide = 1
            oSettings.EndingSlide = 3
    
    'Prevent Office Assistant from displaying alert messages.
            bAssistantOn = oApp.Assistant.On
            oApp.Assistant.On = False
    
    'Run the slide show and wait for the slide show to end.
            oSettings.Run()
            Do While oApp.SlideShowWindows.Count >= 1
                System.Windows.Forms.Application.DoEvents()
            Loop
            oSettings = Nothing
    
    'Reenable Office Assisant, if it was on.
            If bAssistantOn Then
                oApp.Assistant.On = True
                oApp.Assistant.Visible = False
            End If
    
    'Close the presentation without saving changes and quit PowerPoint.
            oPres.Saved = True
            oPres.Close()
            oPres = Nothing
            oApp.Quit()
            oApp = Nothing
            GC.Collect()
        End Sub
    
    

    Opmerking In deze code vertegenwoordigen de sTemplate- en sPic-constanten respectievelijk het volledige pad en de bestandsnaam naar een PowerPoint-sjabloon en een afbeelding. Wijzig deze paden indien nodig om een sjabloon of afbeelding te gebruiken die op uw systeem is geïnstalleerd.

  7. Voeg de volgende code toe boven aan Form1.vb:

    Imports Office = Microsoft.Office.Core
    Imports Graph = Microsoft.Office.Interop.Graph
    Imports PowerPoint = Microsoft.Office.Interop.PowerPoint
    
  8. Druk op F5 om het programma te bouwen en vervolgens uit te voeren.

  9. Klik op Knop1 in het formulier om een PowerPoint-presentatie te maken en weer te geven.

Verwijzingen

Zie voor meer informatie de volgende MSDN-website (Microsoft Developer Network): Visual Studio Tools for the Microsoft Office System 2003 Training