Τρόπος αυτοματοποίησης του Word από τη Visual Basic.NET για να δημιουργήσετε ένα νέο έγγραφο

Μεταφράσεις άρθρων Μεταφράσεις άρθρων
Αναγν. άρθρου: 316383 - Δείτε τα προϊόντα στα οποία αναφέρεται το συγκεκριμένο άρθρο.
Για μια οπτική Microsoft C#.NET έκδοση αυτού του άρθρου, ανατρέξτε στο θέμα 316384.
Για Microsoft Visual Basic έκδοση 6.0 αυτού του άρθρου, ανατρέξτε στο 313193.
Ανάπτυξη όλων | Σύμπτυξη όλων

Σε αυτήν τη σελίδα

Περίληψη

Αυτό το άρθρο βήμα προς βήμα περιγράφει τον τρόπο δημιουργίας ενός νέου έγγραφο του Word χρησιμοποιώντας αυτοματοποίηση από τη Visual Basic.NET.

Δείγμα κώδικα

Το δείγμα κώδικα σε αυτό το άρθρο παρουσιάζει τον τρόπο για να γίνει η ακολουθεί:
  • Εισαγωγή παραγράφους με μορφοποίηση κειμένου και.
  • Αναζήτηση και να τροποποιήσετε διάφορες περιοχές μέσα σε ένα το έγγραφο.
  • Εισαγωγή πινάκων, μορφοποιήστε τους πίνακες και συμπλήρωση των πινάκων με τα δεδομένα.
  • Προσθήκη ενός γραφήματος.
Για να δημιουργήσετε ένα νέο έγγραφο του Word χρησιμοποιώντας αυτοματοποίηση από Visual Βασικό.NET, ακολουθήστε τα εξής βήματα:
  1. Ξεκινήστε το Microsoft Visual Studio.NET. Από το Το αρχείο μενού, κάντε κλικ στο κουμπί Νέα και στη συνέχεια κάντε κλικ στο κουμπί Έργο. Στην περιοχή Τύποι έργου Κάντε κλικ στο κουμπί Έργα της Visual Basic, στη συνέχεια, κάντε κλικ στο κουμπί Εφαρμογή των Windows στην περιοχή Πρότυπα. Δημιουργείται η φόρμα Form1 από προεπιλογή.
  2. Προσθέστε μια αναφορά για το Βιβλιοθήκη αντικειμένων του Microsoft Word. Ακολουθήστε τα εξής βήματα:
    1. Από το Έργο μενού, κάντε κλικ στο κουμπί Προσθήκη αναφοράς.
    2. Από το COM καρτέλα, εντοπίστε το Microsoft Word Βιβλιοθήκη αντικειμένων και κάντε κλικ στο κουμπί Επιλέξτε.

      Σημείωση Microsoft Office 2003 και νεότερες εκδόσεις του Office περιλαμβάνουν πρωτεύοντα Interop (PIA). Microsoft Office XP δεν περιλαμβάνουν στοιχεία PIA αλλά μπορεί να γίνει λήψη.Για περισσότερες πληροφορίες σχετικά με τα στοιχεία PIA του Office XP, κάντε κλικ στον αριθμό του άρθρου παρακάτω, για να προβάλετε το άρθρο της Γνωσιακής Βάσης της Microsoft:
      328912Microsoft Office XP κύριο σύνολο διαλειτουργικότητας (PIA) είναι διαθέσιμα για λήψη
    3. Κάντε κλικ στο κουμπί OK με το Προσθήκη αναφορών παράθυρο διαλόγου για να αποδεχτείτε τις επιλογές σας. Εάν λάβετε μια ερώτηση για δημιουργήσετε προγράμματα εξομοίωσης για βιβλιοθήκες που επιλέξατε, κάντε κλικ στο Ναι.
  3. Από το Προβολή μενού, επιλέξτε Εργαλειοθήκη Για να εμφανίσετε την εργαλειοθήκη και, στη συνέχεια, να προσθέσετε ένα κουμπί Form1.
  4. Κάντε διπλό κλικ Button1. Εμφανίζεται το παράθυρο κώδικα της φόρμας.
  5. Στο παράθυρο κώδικα, αντικαταστήστε τον ακόλουθο κώδικα
        Private Sub Button1_Click(ByVal sender As System.Object, _
          ByVal e As System.EventArgs) Handles Button1.Click
    
        End Sub
    με:
        Private Sub Button1_Click(ByVal sender As System.Object, _
          ByVal e As System.EventArgs) Handles Button1.Click
    
            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.
            oWord = CreateObject("Word.Application")
            oWord.Visible = True
            oDoc = oWord.Documents.Add
    
            'Insert a paragraph at the beginning of the document.
            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.
            oPara2 = oDoc.Content.Paragraphs.Add(oDoc.Bookmarks.Item("\endofdoc").Range)
            oPara2.Range.Text = "Heading 2"
            oPara2.Format.SpaceAfter = 6
            oPara2.Range.InsertParagraphAfter()
    
            'Insert another paragraph.
            oPara3 = oDoc.Content.Paragraphs.Add(oDoc.Bookmarks.Item("\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 and italic.
            Dim r As Integer, c As Integer
            oTable = oDoc.Tables.Add(oDoc.Bookmarks.Item("\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.Item(1).Range.Font.Bold = True
            oTable.Rows.Item(1).Range.Font.Italic = True
    
            'Add some text after the table.
            'oTable.Range.InsertParagraphAfter()
            oPara4 = oDoc.Content.Paragraphs.Add(oDoc.Bookmarks.Item("\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.
            oTable = oDoc.Tables.Add(oDoc.Bookmarks.Item("\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.Item(1).Width = oWord.InchesToPoints(2)   'Change width of columns 1 & 2
            oTable.Columns.Item(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.Item("\endofdoc").Range.InsertParagraphAfter()
            Do
                oRng = oDoc.Bookmarks.Item("\endofdoc").Range
                oRng.ParagraphFormat.SpaceAfter = 6
                oRng.InsertAfter("A line of text")
                oRng.InsertParagraphAfter()
            Loop While Pos >= oRng.Information(Word.WdInformation.wdVerticalPositionRelativeToPage)
            oRng.Collapse(Word.WdCollapseDirection.wdCollapseEnd)
            oRng.InsertBreak(Word.WdBreakType.wdPageBreak)
            oRng.Collapse(Word.WdCollapseDirection.wdCollapseEnd)
            oRng.InsertAfter("We're now on page 2. Here's my chart:")
            oRng.InsertParagraphAfter()
    
            'Insert a chart and change the chart.
            oShape = oDoc.Bookmarks.Item("\endofdoc").Range.InlineShapes.AddOLEObject( _
                ClassType:="MSGraph.Chart.8", FileName _
                :="", LinkToFile:=False, DisplayAsIcon:=False)
            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.
            oRng = oDoc.Bookmarks.Item("\endofdoc").Range
            oRng.InsertParagraphAfter()
            oRng.InsertAfter("THE END.")
    
            'All done. Close this form.
            Me.Close()
    
        End Sub
  6. Προσθέστε τον ακόλουθο κώδικα στο επάνω μέρος Form1.vb:
    Imports Word = Microsoft.Office.Interop.Word
  7. Πατήστε F5 για να δημιουργήσετε και να εκτελέσετε το πρόγραμμα.
Αφού ολοκληρωθεί ο κώδικας, εξετάστε το έγγραφο που έχει δημιουργηθεί για εσάς. Το έγγραφο περιέχει δύο σελίδες μορφοποιημένες παραγράφους, πίνακες, και ένα γράφημα.

Χρήση προτύπου

Εάν χρησιμοποιείτε αυτοματοποίηση για να δημιουργήσετε έγγραφα που βρίσκονται όλα σε ένα κοινή μορφή, μπορείτε να επωφεληθείτε από την εκκίνηση της διεργασίας με ένα νέο έγγραφο με βάση ένα προδιαμορφωμένο πρότυπο. Χρησιμοποιώντας ένα πρότυπο με το Word Προγράμματος-πελάτη αυτοματισμού έχει δύο σημαντικά πλεονεκτήματα σε σχέση με τη δημιουργία ενός εγγράφου από τίποτα:
  • Μπορείτε να έχετε μεγαλύτερο έλεγχο της μορφοποίησης και τοποθέτηση αντικειμένων σε όλη τη διάρκεια των εγγράφων.
  • Μπορείτε να δημιουργήσετε τα έγγραφά σας με λιγότερο κώδικα.
Χρησιμοποιώντας ένα πρότυπο, μπορείτε να τελειοποιήσετε τη θέση των πινάκων, παραγράφους και άλλα αντικείμενα μέσα στο έγγραφο, καθώς και περιλαμβάνουν μορφοποίηση σε αυτά τα αντικείμενα. Με τη χρήση αυτοματισμού, μπορείτε να δημιουργήσετε ένα νέο έγγραφο βασίζεται στο πρότυπο με κώδικα, όπως τα ακόλουθα:
oWord.Documents.Add "<Path to your template>\MyTemplate.dot"
Στο πρότυπο, μπορείτε να ορίσετε τους σελιδοδείκτες, έτσι ώστε να σας αυτοματισμού πρόγραμμα-πελάτης να συμπληρώσετε μεταβλητή κειμένου σε μια συγκεκριμένη θέση στο έγγραφο, όπως ακολουθεί:
oDoc.Bookmarks.Item("MyBookmark").Range.Text = "Some Text Here"
Χρησιμοποιώντας ένα πρότυπο ένα άλλο πλεονέκτημα είναι ότι μπορείτε να δημιουργήσετε και να αποθηκεύσετε μορφοποίηση στυλ που θέλετε να ισχύουν κατά το χρόνο εκτέλεσης, ως εξής:
oDoc.Bookmarks.Item("MyBookmark").Range.Style = "MyStyle"
- ή -
oWord.Selection.Style = "MyStyle"

Αναφορές

Για περισσότερες πληροφορίες σχετικά με τη χρήση της Visual Basic.NET για την αυτοματοποίηση Το Microsoft Word, κάντε κλικ στον αριθμό του άρθρου παρακάτω, για να προβάλετε το άρθρο της Γνωσιακής Βάσης της Microsoft:
301656Τρόπος αυτοματοποίησης του Word για να εκτελέσετε μια συγχώνευση αλληλογραφίας από τη Visual Basic.NET
Για περισσότερες πληροφορίες, ανατρέξτε στο ακόλουθο Microsoft Τοποθεσίες Web Developer Network (MSDN):
Ανάπτυξη του Microsoft Office με το Visual Studio
.aspx http://msdn2.Microsoft.com/en-us/library/aa188489 (office.10)

Το Word του Office
.aspx http://msdn2.Microsoft.com/en-us/library/aa201330 (office.11)

Μία λέξη περισσότερες
.aspx http://msdn2.Microsoft.com/en-us/library/aa201332 (office.11)

Ιδιότητες

Αναγν. άρθρου: 316383 - Τελευταία αναθεώρηση: Κυριακή, 29 Μαΐου 2011 - Αναθεώρηση: 6.0
Οι πληροφορίες σε αυτό το άρθρο ισχύουν για:
  • Microsoft Visual Basic .NET 2003 Standard Edition
  • Microsoft Visual Basic .NET 2002 Standard Edition
  • Microsoft Office Word 2007
  • Microsoft Word 2002 Standard Edition
  • Microsoft Word 2010
  • Microsoft Visual Basic 2005
  • Microsoft Visual Basic 2005 Express Edition
  • Microsoft Visual Basic 2008 Express Edition
  • Microsoft Visual Basic 2010 Express
Λέξεις-κλειδιά: 
kbexpertiseinter kbautomation kbhowtomaster kbmt KB316383 KbMtel
Μηχανικά μεταφρασμένο
ΣΗΜΑΝΤΙΚΟ: Αυτό το άρθρο είναι προϊόν λογισμικού μηχανικής μετάφρασης της Microsoft και όχι ανθρώπινης μετάφρασης. Η Microsoft σάς προσφέρει άρθρα που είναι προϊόντα ανθρώπινης αλλά και μηχανικής μετάφρασης έτσι ώστε να έχετε πρόσβαση σε όλα τα άρθρα της Γνωσιακής Βάσης μας στη δική σας γλώσσα. Ωστόσο, ένα άρθρο που έχει προκύψει από μηχανική μετάφραση δεν είναι πάντα άριστης ποιότητας. Ενδέχεται να περιέχει λεξιλογικά, συντακτικά ή γραμματικά λάθη, όπως ακριβώς τα λάθη που θα έκανε ένας μη φυσικός ομιλητής επιχειρώντας να μιλήσει τη γλώσσα σας. Η Microsoft δεν φέρει καμία ευθύνη για τυχόν ανακρίβειες, σφάλματα ή ζημίες που προκύψουν λόγω τυχόν παρερμηνειών στη μετάφραση του περιεχομένου ή χρήσης του από τους πελάτες της. Επίσης, η Microsoft πραγματοποιεί συχνά ενημερώσεις στο λογισμικό μηχανικής μετάφρασης.
Η αγγλική έκδοση αυτού του άρθρου είναι η ακόλουθη:316383

Αποστολή σχολίων

 

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