Bạn hiện đang ngoại tuyến, hãy chờ internet để kết nối lại

Làm thế nào để tự động hoá từ từ Visual Basic.NET để tạo một tài liệu mới

QUAN TRỌNG: Bài viết này được dịch bằng phần mềm dịch máy của Microsoft chứ không phải do con người dịch. Microsoft cung cấp các bài viết do con người dịch và cả các bài viết do máy dịch để bạn có thể truy cập vào tất cả các bài viết trong Cơ sở Kiến thức của chúng tôi bằng ngôn ngữ của bạn. Tuy nhiên, bài viết do máy dịch không phải lúc nào cũng hoàn hảo. Loại bài viết này có thể chứa các sai sót về từ vựng, cú pháp hoặc ngữ pháp, giống như một người nước ngoài có thể mắc sai sót khi nói ngôn ngữ của bạn. Microsoft không chịu trách nhiệm về bất kỳ sự thiếu chính xác, sai sót hoặc thiệt hại nào do việc dịch sai nội dung hoặc do hoạt động sử dụng của khách hàng gây ra. Microsoft cũng thường xuyên cập nhật phần mềm dịch máy này.

Nhấp chuột vào đây để xem bản tiếng Anh của bài viết này:316383
Đối với một Microsoft Visual C#.NET Phiên bản của bài viết này, xem 316384.
Đối với một Microsoft Visual Basic 6,0 phiên bản của bài viết này, xem 313193.
TÓM TẮT
Bài viết từng bước này mô tả cách tạo ra một mới tài liệu trong Word bằng cách sử dụng tự động hóa từ Visual Basic.NET.

Mã mẫu

Mẫu mã trong bài viết này chứng tỏ làm thế nào để làm việc sau:
  • Chèn đoạn văn với văn bản và định dạng.
  • Duyệt và sửa đổi các phạm vi khác nhau trong vòng một tài liệu.
  • Chèn bảng, định dạng bảng và cư các bảng với dữ liệu.
  • Thêm một biểu đồ.
Để tạo một tài liệu Word mới bằng cách sử dụng tự động hóa từ trực quan Cơ bản.NET, hãy làm theo các bước sau:
  1. Bắt đầu Microsoft Visual Studio.NET. Trên các Tệp trình đơn, nhấp vào Mới sau đó bấm Dự án. Dưới Các loại dự án Nhấp vào Visual Basic dự án, sau đó bấm Ứng dụng Windows dưới Khuôn mẫu. Form1 được tạo ra theo mặc định.
  2. Thêm một tham chiếu đến các Microsoft Word đối tượng thư viện. Để thực hiện việc này, hãy làm theo những bước sau:
    1. Trên các Dự án trình đơn, nhấp vào Thêm tài liệu tham khảo.
    2. Trên các COM tab, xác định vị trí các Microsoft Word Đối tượng thư viện và nhấp vào Chọn.

      Chú ý Microsoft Office 2003 và các phiên bản sau của văn phòng bao gồm chính Interop hội đồng (PIAs). Microsoft Office XP không bao gồm PIAs, nhưng họ có thể được tải về.Để biết thêm chi tiết về Office XP PIAs, nhấp vào số bài viết sau đây để xem bài viết trong cơ sở kiến thức Microsoft:
      328912Microsoft Office XP chính interop hội đồng (PIAs) có sẵn để tải về
    3. Nhấp vào Ok trong các Thêm tài liệu tham khảo hộp thoại để chấp nhận của bạn lựa chọn. Nếu bạn nhận được một nhắc đến tạo ra hàm bao cho các thư viện mà bạn đã chọn, bấm vào Có.
  3. Trên các Xem trình đơn, chọn Hộp công cụ hiển thị hộp công cụ, và sau đó thêm một nút để Form1.
  4. Bấm đúp Button1. Cửa sổ mã cho các hình thức xuất hiện.
  5. Trong cửa sổ mã, thay thế mã sau
        Private Sub Button1_Click(ByVal sender As System.Object, _      ByVal e As System.EventArgs) Handles Button1.Click    End Sub
    với:
        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. Thêm mã sau vào phía trên của Form1.vb:
    Imports Word = Microsoft.Office.Interop.Word
  7. Nhấn F5 để xây dựng và chạy chương trình.
Sau khi mã hoàn thành, kiểm tra các tài liệu được tạo ra Tặng em. Tài liệu chứa hai trang định dạng đoạn, bảng, và một bảng xếp hạng.

Sử dụng một mẫu

Nếu bạn đang sử dụng tự động hóa để xây dựng tài liệu mà là tất cả trong một định dạng phổ biến, bạn có thể hưởng lợi từ bắt đầu quá trình với một tài liệu mới đó dựa trên một mẫu preformatted. Sử dụng một mẫu với lời của bạn Khách hàng tự động hóa có hai lợi thế đáng kể trong việc xây dựng một tài liệu từ không có gì:
  • Bạn có thể có kiểm soát lớn hơn các định dạng và vị trí của các đối tượng trong tài liệu của bạn.
  • Bạn có thể xây dựng tài liệu của bạn với mã ít hơn.
Bằng cách sử dụng một mẫu, bạn có thể tinh chỉnh vị trí của bảng, đoạn văn, và các đối tượng trong tài liệu, cũng như bao gồm định dạng trên các đối tượng. Bằng cách sử dụng tự động hóa, bạn có thể tạo một tài liệu mới dựa trên mẫu của bạn với mã như sau:
oWord.Documents.Add "<Path to your template>\MyTemplate.dot"
Trong mẫu của bạn, bạn có thể xác định trang đánh dấu để tự động hóa của bạn khách hàng có thể điền vào văn bản biến tại một địa điểm cụ thể trong tài liệu, như sau:
oDoc.Bookmarks.Item("MyBookmark").Range.Text = "Some Text Here"
Một lợi thế để sử dụng một mẫu là bạn có thể tạo và cất giữ định dạng phong cách mà bạn muốn áp dụng tại thời gian chạy, như sau:
oDoc.Bookmarks.Item("MyBookmark").Range.Style = "MyStyle"
- hay -
oWord.Selection.Style = "MyStyle"
THAM KHẢO
Để biết thêm chi tiết về việc sử dụng Visual Basic.NET để tự động hóa Microsoft Word, nhấp vào số bài viết sau đây để xem bài viết trong cơ sở kiến thức Microsoft:
301656Làm thế nào để tự động từ để thực hiện một mail merge từ Visual Basic.NET
Để biết thêm chi tiết, xem Microsoft sau đây Các trang Web của nhà phát triển mạng (MSDN):
word2002 word2k2 word10 wordxp wd2002 wd2k2 wd10 wdxp word2003 word2k3 word11 wd2003 wd2k3 wd11 word2007 word2k7 word12 wd2007 wd2k7 wd12

Thuộc tính

ID Bài viết: 316383 - Xem lại Lần cuối: 08/27/2011 20:48:00 - Bản sửa đổi: 2.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 KbMtvi
Phản hồi