Tìm kiếm đường viền (Microsoft Word)
Word có một tính năng rất mạnh cho phép bạn tìm kiếm bất cứ thứ gì dưới ánh nắng mặt trời. Tuy nhiên, một điều bạn không thể tìm kiếm là đường viền trên các đoạn văn. Ví dụ: nếu bạn muốn tìm tất cả các đoạn văn đã bật viền bên trái, bạn không thể thực hiện được. Tuy nhiên, có một số cách để giải quyết vấn đề này.
Cách giải quyết đầu tiên là chỉ cần sử dụng các kiểu để định dạng đoạn văn của bạn.
Nếu bạn sử dụng một kiểu và kiểu gọi cho đường viền bên trái trên một đoạn văn, thì bạn có thể dễ dàng tìm kiếm các đoạn văn bằng kiểu đó.
(Chính xác cách bạn tìm kiếm kiểu đã được đề cập trong các vấn đề khác của WordTips.)
Giải pháp khả thi thứ hai là thực hiện tìm kiếm của bạn bằng cách sử dụng macro.
Sử dụng macro, bạn có thể dễ dàng kiểm tra xem có bất kỳ thuộc tính đường viền nào được đặt cho một đoạn văn hay không. Các bước macro sau đây qua từng đoạn trong tài liệu. Khi tìm thấy một đoạn văn có bất kỳ thuộc tính đường viền nào được đặt, đoạn văn đó sẽ được chọn và macro dừng lại.
Sub SearchForBorders1() Dim k As Word.Paragraph Dim bFound As Boolean For Each k In ActiveDocument.Paragraphs bFound = False If k.Borders(wdBorderTop).LineStyle <> wdLineStyleNone _ Then bFound = True If k.Borders(wdBorderLeft).LineStyle <> wdLineStyleNone _ Then bFound = True If k.Borders(wdBorderBottom).LineStyle <> wdLineStyleNone _ Then bFound = True If k.Borders(wdBorderRight).LineStyle <> wdLineStyleNone _ Then bFound = True If bFound Then k.Range.Select Exit Sub End If Next k End Sub
Macro này có thể rất tiện dụng nếu bạn không có nhiều đoạn văn có đường viền. Tại sao? Bởi vì macro luôn bắt đầu tìm kiếm từ đầu tài liệu, và do đó sẽ chỉ tìm đoạn đầu tiên với bộ đường viền.
Một cách tiếp cận macro khác có thể được sử dụng để tìm kiếm các đường viền trong các đoạn văn ngoài đường mà điểm chèn được đặt. Macro sau đây thực hiện điều đó — nó bắt đầu tìm kiếm sau đoạn văn hiện tại và dừng lại khi đến đoạn có bất kỳ thuộc tính đường viền nào được đặt. Lưu ý rằng macro này không chọn toàn bộ đoạn văn; nó chỉ đơn giản là di chuyển điểm chèn đến đoạn văn có bộ đường viền.
Sub SearchForBorders2() Static a As Long, l As Long Dim b As Boolean Dim bd As Border Dim bds As Borders Dim prg As Paragraph Dim prgs As Paragraphs Dim re As Range Dim se As Selection Dim doc As Word.Document Set se = Selection Set re = se.Range Set doc = ActiveDocument If se.Start < l Then a = se.Start With doc.Content Set bds = .Borders re.Start = a re.End = .End End With For Each bd In bds b = bd = True If b Then Exit For Next If Not b Then Exit Sub Set prgs = re.Paragraphs For Each prg In prgs Set re = prg.Range If InStr(re.Text, Chr(13)) = 0 Then re.End = re.End + 1 End If Set bds = re.Borders For Each bd In bds b = bd = True If b Then Exit For Next If b Then a = re.Start se.Start = re.Start se.End = re.Start a = re.End l = se.Start Exit Sub End If Next a = 0 MsgBox "No more borders found" End Sub
_Lưu ý: _
Nếu bạn muốn biết cách sử dụng các macro được mô tả trên trang này (hoặc trên bất kỳ trang nào khác trên các trang WordTips), tôi đã chuẩn bị một trang đặc biệt bao gồm thông tin hữu ích.
WordTips là nguồn của bạn để đào tạo Microsoft Word hiệu quả về chi phí.
(Microsoft Word là phần mềm xử lý văn bản phổ biến nhất trên thế giới.) Mẹo này (1705) áp dụng cho Microsoft Word 97, 2000, 2002 và 2003. Bạn có thể tìm thấy phiên bản của mẹo này cho giao diện ribbon của Word (Word 2007 và sau này) tại đây: