Con Nan
Trả lời 15 năm trước
Cách dễ dàng và tin cậy nhất để lập trình truy xuất nội dung các file Word là dùng các đối tượng của "Word Automation Server" như Word, Application, Document, Selection,...
Thí dụ sau đây là qui trình xây dựng 1 ứng dụng VB 6.0 đơn giản demo việc thêm chuỗi văn bản vào đầu 1 file *.doc cũng như copy dữ liệu nằm trong file Word này sang file Word khác:
1. Chạy VB 6.0, tạo Project mới thuộc loại "Standard EXE" (loại Project mặc định có 1 Form giao diện rỗng ban đầu).
2. Chọn menu Project.References để hiển thị cửa sổ References. Duyệt tìm và chọn mục Microsoft Word x.y Object Library để "add" các đối tượng truy xuất file Word vào Project. Lưu ý x.y là chỉ số version của thư viện các đối tượng Word được cài trên máy bạn.
3. Tạo 1 button trên Form có tên mặc định là Command1.
4. Nhấn đúp chuột vào button vừa tạo để tạo thủ tục xử lý sự kiện click chuột trên button rồi viết đoạn code thực hiện copy dữ liệu từ file Word này sang file khác như sau:
Option Explicit
'thủ tục xử lý sự kiện click chuột trên button
Private Sub Command1_Click()
'khai báo các biến cần dùng
Dim oWD As Word.Application
Dim oWB As Word.Documents
Dim oDoc1 As Word.Document
Dim oDoc2 As Word.Document
'khởi động Word và nhận đối tượng Application.
Set oWD = CreateObject("Word.Application")
'xác định đối tượng quản lý các file Word.
Set oWB = oWD.Documents
'mở file "c:\data1.xls" chứa kết quả
oWB.Add "c:\data1.doc"
'mở file "c:\data2.xls" chứa dữ liệu cần copy
oWB.Add "c:\data2.doc"
'thiết lập biến các Document cần truy xuất
Set oDoc1 = oWB.Item(1)
Set oDoc2 = oWB.Item(2)
'copy nội dung từ file data2.doc vào clipboard
oDoc2.Activate
oWD.Selection.WholeStory
oWD.Selection.Copy
'chuyển sang file data1.doc
oDoc1.Activate
'mặc định cursor đang ở đầu file
'thêm chuỗi văn bản vào vị trí cursor hiện hành
oWD.Selection.TypeText Text:="Chuỗi cần thêm vào" & vbCrLf
'dán clipboard vào vị trí cursor hiện hành
oWD.Selection.Paste
'cất kết quả lên file mới
oDoc1.SaveAs "c:\data3.doc"
'đóng các đối tượng lại
oDoc1.Close
oDoc2.Close
'đóng ứng dụng Word
oWD.Quit
End Sub
5. Chọn menu Run.Start để chạy thử ứng dụng xem nó hoàn thành nhiệm vụ qui định không.