vba_gpe
Thành viên thường trực




- Tham gia
- 15/12/10
- Bài viết
- 296
- Được thích
- 44
- Nghề nghiệp
- Thất nghiệp
Chào anh chị GPE
Mình có viết một sub tìm một ký tự theo điều kiện trên word và đánh dấu kí tự đó bằng cách bôi màu tím ngay tại vị trí cần tìm.
1. Trên Word mình viết như sau -> Chạy bình thường
2. Mình thử dùng Excel để mở file word đó và cũng thực hiện thao tác tìm kiếm và đánh dấu như trên thì bị lỗi Method 'Find' of Object 'Selection' failed
Mình không biết có khai báo gì sai không? Mong anh chị giải đáp giúp mình
Code trên Excel:
Mong nhân được đóng góp của anh chị.
Mình có gửi kèm 2 file Word và Excel.
Mình có viết một sub tìm một ký tự theo điều kiện trên word và đánh dấu kí tự đó bằng cách bôi màu tím ngay tại vị trí cần tìm.
1. Trên Word mình viết như sau -> Chạy bình thường
Mã:
Sub TestW()
Dim sFindText As String
sFindText = "11111"
Selection.ClearFormatting
Selection.HomeKey wdStory, wdMove
Selection.Find.ClearFormatting
Selection.Find.Execute sFindText
Do Until Selection.Find.Found = False
Selection.Range.HighlightColorIndex = wdPink
Loop
End Sub
2. Mình thử dùng Excel để mở file word đó và cũng thực hiện thao tác tìm kiếm và đánh dấu như trên thì bị lỗi Method 'Find' of Object 'Selection' failed
Mình không biết có khai báo gì sai không? Mong anh chị giải đáp giúp mình
Code trên Excel:
Mã:
Sub TestExcel()
Dim Wapp As Word.Application
Dim Wdoc As Word.Document
FName = ThisWorkbook.Path & "\TestW.doc"
'- Mo word
Set Wapp = CreateObject("Word.Application")
Set Wdoc = Wapp.Documents.Open(FName)
Wapp.Visible = True
Wdoc.Activate
'- Tim trong word
With Wapp
Dim sFindText As String
sFindText = "11111"
.Selection.ClearFormatting
.Selection.HomeKey wdStory, wdMove
.Selection.Find.ClearFormatting
.Selection.Find.Execute sFindText
Do Until .Selection.Find.Found = False
.Selection.Range.HighlightColorIndex = wdPink
Loop
End With
End Sub
Mình có gửi kèm 2 file Word và Excel.
File đính kèm
Lần chỉnh sửa cuối: