• Vui lòng đọc nội qui diễn đàn để tránh bị xóa bài viết
  • Tìm kiếm trước khi đặt câu hỏi

Help Replace Text

Nơi trao đổi về VBA (Visual Basic for Application), lập trình cho ứng dụng Microsoft Office, AutoCAD...

Điều hành viên: tungblt

thuonghieuso
Bài viết: 4
Ngày tham gia: T.Bảy 12/11/2016 3:19 pm

Help Replace Text

Gửi bàigửi bởi thuonghieuso » T.Năm 24/11/2016 2:46 pm

Chào các bạn,
Em có một đoạn như thế này:
Câu 1: Bạn là ai
Câu 2: Ai đi với bạn?
Câu 3: Bạn từ đâu đến?
Câu 4: Bạn đi đến đâu?

Mình muốn viết một Macro trong Word để thay thế "Câu 1, Câu 2, Câu 3, Câu 4" đó thành 1 ký tự nào đó.
Ví dụ: ĐỔi thành thế này ==>
@ Bạn là ai
@ Ai đi với bạn?
@ Bạn từ đâu đến?
@ Bạn đi đến đâu?

Ai giúp mình với !!!!!!



Hình đại diện của người dùng
truongphu
VIP
VIP
Bài viết: 4756
Ngày tham gia: CN 04/11/2007 10:57 am
Đến từ: Cam Đức, Khánh hòa
Has thanked: 14 time
Been thanked: 509 time

Re: Help Replace Text

Gửi bàigửi bởi truongphu » T.Sáu 25/11/2016 8:51 am

  1. Sub ThayNhomTu() ' Use Wildcards
  2.    With Selection.Find
  3.         .ClearFormatting
  4.         .Replacement.ClearFormatting
  5.         .Forward = True
  6.         .Text = "C?u [0-9]:"
  7.         .Replacement.Text = "@"
  8.         .MatchWildcards = True
  9.         .Wrap = wdFindContinue
  10.         .Execute Replace:=wdReplaceAll
  11.     End With
  12. End Sub


(Nhấn vào menu Mở rộng - Thu hẹp để thấy code)
Ý nghĩa .Text = "C?u [0-9]:" là:
C?u = Câu
giữa có space
[0-9] = 1 ký tự từ 0-9
và dấu :

Nếu số câu có thể nhiều hơn 9 (<100), ta viết:
.Text = "C?u [0-9]{1,2}:"
mà {1,2} là có 1 hay 2 ký tự ở trước

Nội dung trên đều có trong đề mục Trao đổi về Word VBA Mời vào đây!
Bạn chịu khó đọc từng bài, hay Search thì sẽ nhận kết quả.
o0o--truongphu--o0o

.........
Ghé thăm:
Chuyện Linh Tinh


Quay về “Visual Basic for Application (VBA)”

Đang trực tuyến

Đang xem chuyên mục này: Không có thành viên nào trực tuyến.1 khách