Bagaimana menemukan akhir halaman dalam dokumen Word dengan menggunakan otomatisasi

Terjemahan Artikel Terjemahan Artikel
ID Artikel: 285599 - Melihat produk di mana artikel ini berlaku.
Perbesar semua | Perkecil semua

Pada Halaman ini

RINGKASAN

Artikel ini menjelaskan metode otomatis untuk menemukan akhir halaman dalam sebuah dokumen Microsoft Word.

INFORMASI LEBIH LANJUT

Ada dua metode yang dapat Anda gunakan untuk menemukan akhir Halaman:
  • Anda dapat menggunakan penunjuk pra "\page". -atau-

  • Anda dapat menggunakan kata Browser objek untuk mengubah titik penyisipan ke browser target wdBrowsePage.
Contoh berikut membuat menggunakan tes dokumen yang mencakup beberapa halaman. Dalam tes dokumen, halaman mungkin berakhir dengan tanda paragraf, atau Halaman mungkin bungkus ke halaman baru, membelah ayat antara dua halaman. Sebelum memulai langkah-langkah untuk membangun contoh di bawah ini, membuat tiga halaman dokumen Microsoft Word dan Simpan sebagai C:\ThreePageDocument.doc.

Contoh # 1: Menggunakan standar Bookmark

  1. Memulai sebuah proyek Visual Basic Standard EXE yang baru. Form1 dibuat oleh default.
  2. Menambah tiga tombol untuk Form1. Mengubah keterangan untukCommand1, Command2, dan Command3 untuk Menggunakan \Page metode Bookmark,Pindah ke berikutnya \Page Bookmark danBerhenti, masing-masing.
  3. Dari Project menu, klik Referensi. Pilih Perpustakaan objek Microsoft Word 9,0, lalu klik Oke. Catatan Untuk Word 2002, pilih Perpustakaan objek Microsoft Word 2002. Untuk Microsoft Office Word 2003, pilih Perpustakaan objek Microsoft Word 11,0.

  4. Salin kode berikut ke modul kode Form1:
    Option Explicit
    Dim oWord As Word.Application
    Dim oDoc As Word.Document
    Dim oRange As Word.Range
    Dim iPageNumber As Integer
    Dim iCount As Integer
    
    Private Sub Command1_Click()
        Set oWord = New Word.Application
        oWord.Visible = True
        iPageNumber = 1     ' Initialize
        Set oDoc = oWord.Documents.Open(FileName:="C:\ThreePagedocument.doc")
        oDoc.Bookmarks("\page").Range.Select     ' \page is internal to Word
        oWord.Selection.Collapse direction:=wdCollapseEnd     ' Position insertion point
        oWord.Selection.MoveLeft Unit:=wdCharacter, Count:=1
        Set oRange = oWord.Selection.Range
        oRange.Text = "*"
        oRange.Collapse direction:=wdCollapseEnd
        oRange.Select
        oWord.Selection.MoveRight Unit:=wdCharacter, Count:=1
        MsgBox "Click OK to close this box, then click the document to see the insertion point", vbMsgBoxSetForeground
    End Sub
    
    Private Sub Command2_Click()
        iPageNumber = iPageNumber + 1  ' Point to next page
        iCount = 2
        oDoc.Bookmarks("\page").Range.Select  ' Word's internal bookmark
        oWord.Selection.Collapse direction:=wdCollapseEnd ' move insertion point
        
        If Asc(oWord.Selection.Characters(1).Text) = 13 Then  ' Is this a paragraph mark?
            ' Assume you're at last paragraph of the last page
            Set oRange = oWord.Selection.Range
            oRange.Text = "*"  ' Show that you're at the end of the page
        Else  ' Not at the end of last paragraph on last page
            oWord.Selection.MoveLeft Unit:=wdCharacter, Count:=2 'Possible Para and Page symbols
            ' Check for Autowrap from one page to the next.
            If Asc(oWord.Selection.Characters(1).Text) <> 13 Then 'it is not a paragraph
                oWord.Selection.MoveUp Unit:=wdLine, Count:=1 ' was autowrapped, so force
                                                              ' current line to next page
                                                              ' if inserted text is to go
                                                              ' on this page
            End If
            Set oRange = oWord.Selection.Range
            oRange.Text = "*"  ' Show that you're at the end of the page
            oRange.Collapse direction:=wdCollapseEnd
            oRange.Select
            oWord.Selection.MoveRight Unit:=wdCharacter, Count:=2 ' past the para and asterisk
        End If
        MsgBox "Dismiss this message, then click the document to see the insertion point.", vbMsgBoxSetForeground
    End Sub
    
    Private Sub Command3_Click()
        If Not (oDoc Is Nothing) Then
            oDoc.Saved = True
            oDoc.Close
            Set oDoc = Nothing
            oWord.Quit (False)
            Set oWord = Nothing
        End If
        Unload Me
    End Sub
    					
  5. Tekan F5 untuk menjalankan program.
  6. Klik Menggunakan \Page metode Bookmark. Pertama, kata dimulai dan membuka ThreePageDocument.doc file. Kemudian muncul kotak pesan. Ikuti petunjuk yang muncul di yang kotak.
  7. Untuk halaman berikutnya, klik Pindah ke berikutnya \Page Bookmark.
  8. Untuk keluar dari Word dan mengakhiri demonstrasi, klik Berhenti.

Contoh # 2: Menggunakan objek Browser

Kode dalam bagian ini menunjukkan bahwa Anda dapat memisahkan konten satu halaman pada satu waktu dari dokumen multi-halaman dan menyalin konten ke dokumen baru.
  1. Memulai sebuah proyek Visual Basic Standard EXE yang baru. Form1 ditambahkan secara default.
  2. Menambahkan dua tombol untuk Form1. Mengubah judul dari Command1 untuk Menggunakan kata Browser metode dan keterangan dari Command2 untuk Berhenti.
  3. Dari Project menu, klik Referensi. Pilih Perpustakaan objek Microsoft Word 9,0, lalu klik Oke.CATATAN: Untuk Word 2002, pilih Perpustakaan objek Microsoft Word 2002. Untuk Microsoft Office Word 2003, pilih Perpustakaan objek Microsoft Word 11,0.

  4. Salin kode berikut ke modul kode Form1:
    Option Explicit
    Dim oWord As Word.Application
    Dim oDoc As Word.Document
    Dim oNewDoc As Word.Document
    Dim oRange As Word.Range
    Dim iPageNumber As Integer
    Dim iCount As Integer
    Dim strTestDir As String
    Dim strTestFile As String
    
    Private Sub Command1_Click()
        Command1.Visible = False
        Dim lCurrentStart As Long
        Dim lCurrentEnd As Long
        Dim lDocumentEnd As Long
        Dim lOutputCount As Long
        
        lOutputCount = 0
        
        'Launch Word and make it visible
        Set oWord = CreateObject("Word.Application")
        oWord.Visible = True
        
        'Open the test document
        Set oDoc = oWord.Documents.Open(FileName:="C:\ThreePageDocument.doc")
        
        'Find the beginning end of the document
        oDoc.Select
        lCurrentStart = oWord.Selection.Start
        lCurrentEnd = lCurrentStart
        lDocumentEnd = oWord.Selection.End
        
        'Move the insertion point to the beginning of the document
        oWord.Selection.Collapse wdCollapseStart
        
        Do While (lCurrentEnd < lDocumentEnd)
            'Move the insertion pointer to the bottom of this page
            oWord.Browser.Target = wdBrowsePage
            oWord.Browser.Next
            lCurrentEnd = oWord.Selection.End
            
            'On the last page, the start and end will be the same
            If (lCurrentStart = lCurrentEnd) Then
                lCurrentEnd = lDocumentEnd
            End If
            
            'Capture the Range of the current page
            Set oRange = oDoc.Range(lCurrentStart, lCurrentEnd)
            
            'Create a new document and copy the range to it
            Set oNewDoc = oWord.Documents.Add
            oRange.Copy
            oNewDoc.Range(0, 0).Paste
            
            'Release the Range so we don't leak references
            Set oRange = Nothing
            
            'Save the new document and close it
            oNewDoc.SaveAs FileName:="C:\Result" & lOutputCount & ".doc"
                 ' You can save as another FileFormat. If so, change the
                 '  file extension accordingly.
            oNewDoc.Close
            Set oNewDoc = Nothing
            
            'Increment the output counter so we don't overwrite this file later
            lOutputCount = lOutputCount + 1
            
            'Reset the current start position
            lCurrentStart = oWord.Selection.End
        Loop
    End Sub
    
    Private Sub Command2_Click()
        If Not (oDoc Is Nothing) Then
             oDoc.Saved = True
             oDoc.Close
             Set oDoc = Nothing
             oWord.Quit (False)
             Set oWord = Nothing
        End If
        Unload Me
    End Sub
    					
  5. Tekan F5 untuk menjalankan program.
  6. Klik Menggunakan kata Browser metode.
  7. Kode akan menghasilkan dokumen Word baru untuk setiap halaman di dokumen. Memeriksa dokumen-dokumen berikut:
    C:\Result0.doc
    C:\Result1.doc
    C:\Result2.doc


(c) Microsoft Corporation 2001, All Rights Reserved. Kontribusi oleh Chris Jensen, Microsoft Corporation.

REFERENSI

Untuk informasi tambahan, klik nomor artikel di bawah ini untuk melihat artikel pada Basis Pengetahuan Microsoft:
220607Cara mengotomatiskan Word untuk melakukan Gabungan surat dari Visual Basic
184974 OFF: Bagaimana Menggunakan otomatisasi (OLE) dengan kata

Properti

ID Artikel: 285599 - Kajian Terakhir: 23 September 2011 - Revisi: 2.0
Berlaku bagi:
  • Microsoft Word 2000
  • Microsoft Visual Basic 6.0 Professional Edition
Kata kunci: 
kbhowto kbmt KB285599 KbMtid
Penerjemahan Mesin
PENTING: Artikel ini diterjemahkan menggunakan perangkat lunak mesin penerjemah Microsoft dan bukan oleh seorang penerjemah. Microsoft menawarkan artikel yang diterjemahkan oleh seorang penerjemah maupun artikel yang diterjemahkan menggunakan mesin sehingga Anda akan memiliki akses ke seluruh artikel baru yang diterbitkan di Pangkalan Pengetahuan (Knowledge Base) dalam bahasa yang Anda gunakan. Namun, artikel yang diterjemahkan menggunakan mesin tidak selalu sempurna. Artikel tersebut mungkin memiliki kesalahan kosa kata, sintaksis, atau tata bahasa, hampir sama seperti orang asing yang berbicara dalam bahasa Anda. Microsoft tidak bertanggung jawab terhadap akurasi, kesalahan atau kerusakan yang disebabkan karena kesalahan penerjemahan konten atau penggunaannya oleh para pelanggan. Microsoft juga sering memperbarui perangkat lunak mesin penerjemah.
Klik disini untuk melihat versi Inggris dari artikel ini:285599

Berikan Masukan

 

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