Cám ơn banc Pro Tuan nghen !
Tui đã chọn được dòng cần thiết trong file word rồi (dòng cần thiết đã được tô đen).
Bây giờ làm sao lấy cái dòng tô đen đó gán vào một biến, mục đích là lấy nội dung dòng đó ra ngoài.
Tui đã dùng puơng thức Copy -> lấy trong Cipboar nhưng tới file thứ 2 thì bị lỗi !! hic !!! chỗ:
Dim DULIEU As IDataObject = Clipboard.GetDataObject
từ vòng lặp thứ 2
Code như sau:
Tui chỉ lấy những thủ tục cơ bản thôi, vì Paste lên đây rắc rối lắm:
Vào được file word -> chạy đến và chọn dòng cần lấy -> copy nó -> gán nội dung trong clibboard vào biến:
Ý của tui là có lệnh nào lấy dòng đã được chon đó dễ dàng hay không ? ( vì đã chọn rồi thì cứ lấy thôi), Cách copy không khả thi lắm !!.
Còn nếu dùng Range, ví dụ như doc.Range(0, 9).Text thì lúc nào nó cũng tính từ đầu văn bản mà số kí tự của đoạn đó khác nhau ở mỗi file nên không được. còn vị trí dòng thì cố định (trường hợp của tui)
Các bác Pro giúp tui với !!! Cần gấp lắm !!
==============================================================
Private Sub XUONG_DONG(ByVal CONTRO As Word.Selection, ByVal SO_DONG_XUONG As Byte)
CONTRO.MoveDown(Unit:=5, Count:=SO_DONG_XUONG) 'Số 5 tương đương với 1 dòng, 16 là đếm từ đầu văn bản xuống 16 dòng ( dòng bắt đầu là dòng số 0)
End Sub
Private Sub CHON_DONG(ByVal CONTRO As Word.Selection)
CONTRO.EndKey(Unit:=5, Extend:=2) 'Số 2 đi với EndKey nghĩa là chọn 1 dòng hiện hành
End Sub
Private Sub VE_DAU_DONG(ByVal CONTRO As Word.Selection)
CONTRO.HomeKey(Unit:=5) 'Tham số này nghĩa là trở về đầu dòng ( số 5 phải đi với Homekey)
End Sub
==================================================
Private Sub TIM_TEXT(ByVal PATH_FILE As String)
Dim UNGDUNG As Word.Application
UNGDUNG = New Word.Application 'CreateObject("Word.Application")
Dim TAILIEU As Word.Document
TAILIEU = UNGDUNG.Documents.Open(PATH_FILE)
Dim CHON As Word.Selection
CHON = TAILIEU.Application.Selection
UNGDUNG.Visible = True
Dim DULIEU As IDataObject = Clipboard.GetDataObject
With CHON
XUONG_DONG(CHON, 17)
CHON_DONG(CHON)
.Copy()
CHUOI = DULIEU.GetData(DataFormats.UnicodeText).ToString
MsgBox(CHUOI)
XUONG_DONG(CHON, 2)
VE_DAU_DONG(CHON)
CHON_DONG(CHON)
.Copy()
CHUOI += "|" & DULIEU.GetData(DataFormats.UnicodeText).ToString & vbNewLine
End With
TAILIEU.Close()
UNGDUNG.Quit()
End Sub
========================================================