Untuk versi Microsoft Visual C# .NET dari artikel ini, lihat .
Untuk versi Microsoft Visual Basic 6.0 dari artikel ini, lihat .
Ringkasan
Artikel ini selangkah demi selangkah menjelaskan cara membuat dokumen baru di Word dengan menggunakan otomatisasi dari Visual Basic .NET.
Kode contoh
Kode contoh dalam artikel ini menunjukkan cara melakukan hal berikut ini:
-
Masukkan paragraf dengan teks dan format.
-
Jelajahi dan mengubah berbagai kisaran dalam dokumen.
-
Menyisipkan tabel, format tabel, dan mengisi tabel dengan data.
-
Tambahkan bagan.
Untuk membuat dokumen Word baru dengan menggunakan otomatisasi dari Visual Basic .NET, ikuti langkah-langkah berikut:
-
Mulai Microsoft Visual Studio .NET. Pada File menu, klik baru , dan kemudian klik Project. Di bawah jenis proyek klik Proyek Visual Basic, kemudian klik Aplikasi Windows di bawah pola dasar. Form1 dibuat secara asali.
-
Menambahkan referensi ke Perpustakaan objek Microsoft Word. Untuk melakukannya, ikuti langkah-langkah berikut:
-
Pada menu Project, klik Tambahkan referensi.
-
Pada COM tab, temukan Perpustakaan objek Microsoft Word dan klik pilih.
Catatan Microsoft Office 2003 dan versi Office termasuk rakitan Interop primer (PIAs). Microsoft Office XP tidak mencakup PIAs, namun mereka dapat diunduh.
Untuk informasi selengkapnya tentang Office XP PIAs, klik nomor artikel berikut ini untuk melihat artikel di Pangkalan Pengetahuan Microsoft:Microsoft Office XP rakitan interop primer (PIAs) tersedia untuk diunduh
-
Klik OK di kotak dialog Tambah referensi untuk menerima pilihan Anda. Jika Anda menerima prompt untuk menghasilkan pembungkus perpustakaan yang dipilih, klik ya.
-
-
Pada menu Tampilan, pilih Kotak Alat untuk menampilkan Kotak Alat, lalu tambahkan tombol pada Form1.
-
Klik dua kali Button1. Jendela kode untuk formulir muncul.
-
Di jendela kode, ganti kode berikut
Private Sub Button1_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles Button1.Click
End Subdengan:
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 -
Menambahkan kode berikut ke bagian atas Form1.vb:
Imports Word = Microsoft.Office.Interop.Word
-
Tekan F5 untuk membuat dan menjalankan program.
Setelah selesai kode, periksa dokumen yang dibuat untuk Anda. Dokumen memuat halaman dua paragraf diformat, tabel dan grafik.
Menggunakan pola dasar
Jika Anda menggunakan otomatisasi untuk membuat dokumen yang ada dalam format yang umum, Anda dapat memanfaatkan memulai proses dengan dokumen baru yang didasarkan pada template sudah terformat. Menggunakan template dengan klien Otomasi Word Anda memiliki dua keuntungan yang signifikan melalui membuat dokumen dari tidak ada:
-
Anda dapat memiliki kontrol lebih format dan penempatan objek seluruh dokumen.
-
Anda dapat membuat dokumen dengan sedikit kode.
Dengan menggunakan pola dasar, Anda dapat menyempurnakan penempatan tabel, paragraf, dan objek lain dalam dokumen, serta termasuk pemformatan pada objek tersebut. Dengan menggunakan otomatisasi, Anda dapat membuat dokumen baru berdasarkan template Anda dengan kode seperti berikut:
oWord.Documents.Add "<Path to your template>\MyTemplate.dot"
Dalam template Anda, Anda dapat menentukan bookmark sehingga klien Otomasi Anda dapat mengisi variabel teks di lokasi tertentu di dokumen, sebagai berikut:
oDoc.Bookmarks.Item("MyBookmark").Range.Text = "Some Text Here"
Keuntungan lain menggunakan pola dasar adalah bahwa Anda dapat membuat dan menyimpan format gaya yang ingin Anda terapkan saat menjalankan, sebagai berikut:
oDoc.Bookmarks.Item("MyBookmark").Range.Style = "MyStyle"
-atau-
oWord.Selection.Style = "MyStyle"
Referensi
Untuk informasi selengkapnya tentang cara menggunakan Visual Basic .NET untuk mengotomatisasi Microsoft Word, klik nomor artikel berikut ini untuk melihat artikel di Pangkalan Pengetahuan Microsoft:
cara mengotomatiskan Word untuk menggabungkan Surat dari Visual Basic .NET
Untuk informasi lebih lanjut, lihat situs Web Microsoft Developer Network (MSDN) berikut:
Pengembangan Microsoft Office dengan Visual Studio
Word di kantor
Satu kata lainnya