Hoe Microsoft Word automatiseren met Visual Basic een nieuw document maken

Vertaalde artikelen Vertaalde artikelen
Artikel ID: 313193 - Bekijk de producten waarop dit artikel van toepassing is.
Alles uitklappen | Alles samenvouwen

Samenvatting

In dit stapsgewijze artikel wordt beschreven hoe u een nieuwe maken document in Word met behulp van automatisering in Visual Basic.

Voorbeeldcode

De voorbeeldcode in dit artikel wordt gedemonstreerd hoe u de volgende:
  • Alinea's met tekst en opmaak invoegen.
  • Zoeken en wijzigen van verschillende bereiken binnen een document.
  • Tabellen invoegen, tabellen en tabellen met vullen gegevens.
  • Een grafiek toevoegen.
Een nieuw Word-document maken met behulp van automatisering in Visual Basis, als volgt:
  1. Maak een nieuw standaard-EXE-project in Visual Basic. Formulier1 Standaard wordt gemaakt.
  2. Op deProjectmenu, klikt u opVerwijzingen, klik op een van de volgende opties en klik vervolgens opOK:
    • Office Word 2007, klikt u opMicrosoft Word 12. 0 Object Library.
    • Voor Word 2003, klikt u opMicrosoft Word 11. 0 Object Library.
    • Word 2002, klikt u opMicrosoft Word 10. 0 Objectbibliotheek.
    • Word 2000, klikt u opMicrosoft Word 9. Objectbibliotheek.
  3. Voeg een CommandButton-besturingselement toe aan Form1.
  4. Voeg de volgende code aan de gebeurtenis Click van Opdracht1:
        Dim oWord As Word.Application
        Dim oDoc As Word.Document
        Dim oTable As Word.Table
        Dim oPara1 As Word.Paragraph, oPara2 As Word.Paragraph
        Dim oPara3 As Word.Paragraph, oPara4 As Word.Paragraph
        Dim oRng As Word.Range
        Dim oShape As Word.InlineShape
        Dim oChart As Object
        Dim Pos as Double
    
        'Start Word and open the document template.
        Set oWord = CreateObject("Word.Application")
        oWord.Visible = True
        Set oDoc = oWord.Documents.Add
        
        'Insert a paragraph at the beginning of the document.
        Set oPara1 = oDoc.Content.Paragraphs.Add
        oPara1.Range.Text = "Heading 1"
        oPara1.Range.Font.Bold = True
        oPara1.Format.SpaceAfter = 24    '24 pt spacing after paragraph.
        oPara1.Range.InsertParagraphAfter
        
        'Insert a paragraph at the end of the document.
        '** \endofdoc is a predefined bookmark.
        Set oPara2 = oDoc.Content.Paragraphs.Add(oDoc.Bookmarks("\endofdoc").Range)
        oPara2.Range.Text = "Heading 2"
        oPara2.Format.SpaceAfter = 6
        oPara2.Range.InsertParagraphAfter
        
        'Insert another paragraph.
        Set oPara3 = oDoc.Content.Paragraphs.Add(oDoc.Bookmarks("\endofdoc").Range)
        oPara3.Range.Text = "This is a sentence of normal text. Now here is a table:"
        oPara3.Range.Font.Bold = False
        oPara3.Format.SpaceAfter = 24
        oPara3.Range.InsertParagraphAfter
        
        'Insert a 3 x 5 table, fill it with data and make the first row
        'bold,italic.
        Dim r As Integer, c As Integer
        Set oTable = oDoc.Tables.Add(oDoc.Bookmarks("\endofdoc").Range, 3, 5)
        oTable.Range.ParagraphFormat.SpaceAfter = 6
        For r = 1 To 3
            For c = 1 To 5
                oTable.Cell(r, c).Range.Text = "r" & r & "c" & c
            Next
        Next
        oTable.Rows(1).Range.Font.Bold = True
        oTable.Rows(1).Range.Font.Italic = True
        
        'Add some text after the table.
        'oTable.Range.InsertParagraphAfter
        Set oPara4 = oDoc.Content.Paragraphs.Add(oDoc.Bookmarks("\endofdoc").Range)
        oPara4.Range.InsertParagraphBefore
        oPara4.Range.Text = "And here's another table:"
        oPara4.Format.SpaceAfter = 24
        oPara4.Range.InsertParagraphAfter
        
        'Insert a 5 x 2 table, fill it with data and change the column widths.
        Set oTable = oDoc.Tables.Add(oDoc.Bookmarks("\endofdoc").Range, 5, 2)
        oTable.Range.ParagraphFormat.SpaceAfter = 6
        For r = 1 To 5
            For c = 1 To 2
                oTable.Cell(r, c).Range.Text = "r" & r & "c" & c
            Next
        Next
        oTable.Columns(1).Width = oWord.InchesToPoints(2)   'Change width of columns 1 & 2.
        oTable.Columns(2).Width = oWord.InchesToPoints(3)
        
        'Keep inserting text. When you get to 7 inches from top of the
        'document, insert a hard page break.
        Pos = oWord.InchesToPoints(7)
        oDoc.Bookmarks("\endofdoc").Range.InsertParagraphAfter
        Do
            Set oRng = oDoc.Bookmarks("\endofdoc").Range
            oRng.ParagraphFormat.SpaceAfter = 6
            oRng.InsertAfter "A line of text"
            oRng.InsertParagraphAfter
        Loop While Pos >= oRng.Information(wdVerticalPositionRelativeToPage)
        oRng.Collapse (wdCollapseEnd)
        oRng.InsertBreak wdPageBreak
        oRng.Collapse wdCollapseEnd
        oRng.InsertAfter "We're now on page 2. Here's my chart:"
        oRng.InsertParagraphAfter
        
        'Insert a chart and change the chart.
        Set oShape = oDoc.Bookmarks("\endofdoc").Range.InlineShapes.AddOLEObject( _
            ClassType:="MSGraph.Chart.8", FileName _
            :="", LinkToFile:=False, DisplayAsIcon:=False)
        Set oChart = oShape.OLEFormat.Object
        oChart.charttype = 4 'xlLine = 4
        oChart.Application.Update
        oChart.Application.Quit
        '... If desired, you can proceed from here using the Microsoft Graph 
        'Object model on the oChart object to make additional changes to the
        'chart.
        oShape.Width = oWord.InchesToPoints(6.25)
        oShape.Height = oWord.InchesToPoints(3.57)
        
        'Add text after the chart.
        Set oRng = oDoc.Bookmarks("\endofdoc").Range
        oRng.InsertParagraphAfter
        oRng.InsertAfter "THE END."
    
        'All done. Unload this form.
        Unload Me
    					
  5. Druk op F5 om het programma uitvoeren en klik vervolgens opCommand1.
Nadat de code is voltooid, controleert u het document dat is gemaakt voor u. Het document bevat twee pagina's van opgemaakte alinea's, tabellen, en een grafiek.

Een sjabloon gebruiken

Als u met automatisering voor documenten die in een algemene indeling, kunt u profiteren van het proces wordt gestart met een nieuw document dat is gebaseerd op een vooraf opgemaakte sjabloon. Met behulp van een sjabloon met Word Automatiserings client heeft twee belangrijke voordelen ten opzichte van een document uit te bouwen niets:
  • Hebt u meer controle over de opmaak en plaatsing van objecten in uw documenten.
  • U kunt uw documenten met minder code maken.
Met behulp van een sjabloon, kunt u de plaatsing van tabellen aanpassen de leden en andere objecten in het document, alsmede opnemen opmaak van deze objecten. Met behulp van automatisering, kunt u een nieuw document maken gebaseerd op de sjabloon met code zoals de volgende:
oWord.Documents.Add "<Path to your template>\MyTemplate.dot"
				
In de sjabloon, kunt u bladwijzers definiëren zodat uw automatisering client kunt variabele tekst op een bepaalde locatie in het document invullen als de volgende:
oDoc.Bookmarks("MyBookmark").Range.Text = "Some Text Here"
				
Een ander voordeel van het gebruik van een sjabloon is dat u kunt maken en opslaan opmaak profielen die u wilt toepassen tijdens runtime, als volgt:
oDoc.Bookmarks("MyBookmark").Range.Style = "MyStyle"
				
- of -
oWord.Selection.Style = "MyStyle"
				

Referenties

Klik op de artikel nummers hieronder om meer informatie de artikelen worden weer gegeven in de Microsoft Knowledge Base:
220607Het automatiseren van Microsoft Word voor de samen voeg bewerking uitvoeren vanuit Visual Basic
285332Het automatiseren van Word 2002 Visual Basic wilt samenvoegen
285333INFO: Demonstratie van Word 2002 MailMerge gebeurtenis Code
Zie voor meer informatie de volgende Microsoft Developer Network (MSDN)-websites:
Microsoft Office Development met Visual Studio
(office.10) http://msdn2.Microsoft.com/en-us/library/aa188489. aspx
(c) Microsoft Corporation 2001, alle rechten voorbehouden. Bijdragen: Lori b. Turner, Microsoft Corporation.

Eigenschappen

Artikel ID: 313193 - Laatste beoordeling: maandag 28 februari 2011 - Wijziging: 2.0
De informatie in dit artikel is van toepassing op:
  • Microsoft Visual Basic 6.0 Professional Edition
  • Microsoft Office Word 2007
  • Microsoft Word 2002 Standard Edition
  • Microsoft Word 2000 Standard Edition
Trefwoorden: 
kbexpertiseinter kbautomation kbhowtomaster kbmt KB313193 KbMtnl
Automatisch vertaald artikel
BELANGRIJK: Dit artikel is vertaald door de vertaalmachine software van Microsoft in plaats van door een professionele vertaler. Microsoft biedt u professioneel vertaalde artikelen en artikelen vertaald door de vertaalmachine, zodat u toegang heeft tot al onze knowledge base artikelen in uw eigen taal. Artikelen vertaald door de vertaalmachine zijn niet altijd perfect vertaald. Deze artikelen kunnen fouten bevatten in de vocabulaire, zinsopbouw en grammatica en kunnen lijken op hoe een anderstalige de taal spreekt en schrijft. Microsoft is niet verantwoordelijk voor onnauwkeurigheden, fouten en schade ontstaan door een incorrecte vertaling van de content of het gebruik ervan door onze klanten. Microsoft past continue de kwaliteit van de vertaalmachine software aan door deze te updaten.
De Engelstalige versie van dit artikel is de volgende:313193

Geef ons feedback

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com