Nhờ viết code lấy dữ liệu từ textfield của Word Form vào Excel?

Liên hệ QC

heroic

Thành viên mới
Tham gia
12/1/07
Bài viết
41
Được thích
27
Mình tìm hoài có cách lấy dữ liệu từ Excel lên Word form. Có bạn nào có cách ngược lại lấy dữ liệu từ Word form vào Excel thì share cho mình với!

thanks
 
Mình tìm hoài có cách lấy dữ liệu từ Excel lên Word form. Có bạn nào có cách ngược lại lấy dữ liệu từ Word form vào Excel thì share cho mình với!

thanks

Giả sử có phép gán dữ liệu giữa Word với Excel (mà bạn biết rồi) là A=B thì viết lại thành B=A.
Chắc cơ hội thành công cũng hơn 50%. Test rồi cho biết kết quả nhé!
 
Upvote 0
Mình tìm hoài có cách lấy dữ liệu từ Excel lên Word form. Có bạn nào có cách ngược lại lấy dữ liệu từ Word form vào Excel thì share cho mình với!

thanks

bạn nên đưa file Ms.WORD lên và Ms Excel theo đúng số liệu và form yêu cầu,
Chắc chắn có thành viên giúp bạn được
chứ nói không thì khó...
 
Upvote 0
Mình tìm hoài có cách lấy dữ liệu từ Excel lên Word form. Có bạn nào có cách ngược lại lấy dữ liệu từ Word form vào Excel thì share cho mình với!

thanks

Chuyện đọc hay ghi cái gì đó không khó. Nhưng phải biết đọc ở đâu, ghi ở đâu. Nói cách khác cần phải biết gán cái "mác" cho ai hoặc đọc cái "mác" đó từ ai.
Mã:
Function GetAllTextFormField(document As Object)
'    đoňc thông tin vęĚ tâět caŇ caěc Text Form Field trong văn baŇn document
'    haĚm traŇ vęĚ maŇng coě 2 côňt. Côňt 1 laĚ TĘN, côňt 2 laĚ giaě triň. TĘN naĚy lâěy őŇ đâu? Nęěu ta đuěp chuôňt lęn Text Form Field hoăňc chuôňt phaŇi
'    rôĚi choňn Properties thiĚ TĘN őŇ ô Bookmark chiěnh laĚ TĘN câĚn tiĚm
Dim count As Long, aField As Object, Arr, r As Long
    On Error Resume Next
    count = document.FormFields.count
    ReDim Arr(1 To count, 1 To 2)
    For Each aField In document.FormFields
        r = r + 1
        Arr(r, 1) = aField.Name
        Arr(r, 2) = aField.result
    Next
    GetAllTextFormField = Arr
End Function
Function GetTextFormField(document As Object, index) As String
'    haĚm traŇ vęĚ giaě triň cuŇa Text Form Field xaěc điňnh bőŇi index trong văn baŇn document
'    index coě thęŇ laĚ sôě thýě týň cuŇa Text Form Field hoăňc TĘN
    On Error Resume Next
    GetTextFormField = document.FormFields(index).result
End Function
Sub SetTextFormField(document As Object, index, ByVal text As String)
'    thięět lâňp giaě triň cho Text Form Field xaěc điňnh bőŇi index trong văn baŇn document
'    index coě thęŇ laĚ sôě thýě týň cuŇa Text Form Field hoăňc TĘN
    On Error Resume Next
    document.FormFields(index).result = text
End Sub
 

File đính kèm

  • bien ban.doc
    27 KB · Đọc: 41
  • test.xls
    46.5 KB · Đọc: 92
Upvote 0
Chuyện đọc hay ghi cái gì đó không khó. Nhưng phải biết đọc ở đâu, ghi ở đâu. Nói cách khác cần phải biết gán cái "mác" cho ai hoặc đọc cái "mác" đó từ ai.
Mã:
Function GetAllTextFormField(document As Object)
'    đoňc thông tin vęĚ tâět caŇ caěc Text Form Field trong văn baŇn document
'    haĚm traŇ vęĚ maŇng coě 2 côňt. Côňt 1 laĚ TĘN, côňt 2 laĚ giaě triň. TĘN naĚy lâěy őŇ đâu? Nęěu ta đuěp chuôňt lęn Text Form Field hoăňc chuôňt phaŇi
'    rôĚi choňn Properties thiĚ TĘN őŇ ô Bookmark chiěnh laĚ TĘN câĚn tiĚm
Dim count As Long, aField As Object, Arr, r As Long
    On Error Resume Next
    count = document.FormFields.count
    ReDim Arr(1 To count, 1 To 2)
    For Each aField In document.FormFields
        r = r + 1
        Arr(r, 1) = aField.Name
        Arr(r, 2) = aField.result
    Next
    GetAllTextFormField = Arr
End Function
Function GetTextFormField(document As Object, index) As String
'    haĚm traŇ vęĚ giaě triň cuŇa Text Form Field xaěc điňnh bőŇi index trong văn baŇn document
'    index coě thęŇ laĚ sôě thýě týň cuŇa Text Form Field hoăňc TĘN
    On Error Resume Next
    GetTextFormField = document.FormFields(index).result
End Function
Sub SetTextFormField(document As Object, index, ByVal text As String)
'    thięět lâňp giaě triň cho Text Form Field xaěc điňnh bőŇi index trong văn baŇn document
'    index coě thęŇ laĚ sôě thýě týň cuŇa Text Form Field hoăňc TĘN
    On Error Resume Next
    document.FormFields(index).result = text
End Sub
Bạn có thể cho mình hỏi là:
Nếu mình để file bien ban.doc ở một chỗ khác không cùng đường dẫn thì sửa code như thế nào?
"Sub Button2_Click()Dim doc_app As Object, doc As Object, filename As String
On Error Resume Next
Set doc_app = CreateObject("Word.Application")

If Right(ThisWorkbook.Path, 1) <> "\" Then
filename = ThisWorkbook.Path & "\bien ban.doc"
Else
filename = ThisWorkbook.Path & "bien ban.doc"
End If

Set doc = doc_app.Documents.Open(filename)
Range("A5").Value = GetTextFormField(doc, 2)

doc_app.Quit
Set doc = Nothing
Set doc_app = Nothing
End Sub". Đây là code của bạn ở trong file kèm theo.
 
Lần chỉnh sửa cuối:
Upvote 0
Web KT
Back
Top Bottom