מוקדש ל-ונתנו10
אפשר להשתמש עם כלי ה-GREP ע"י VBA, לחיפוש והחלפה בוורד!
אך נראה לי שיש איזה הגבלות בחיפוש (הלוואי הייתי מכיר שפת ה-GREP).
לחפש משהו
להדגיש מלה ראשונה בכל פסקה (רק באנגלית, אולי יש נוסחה אחרת שימצא גם בעברית):
וכמובן אפשר להוסיף עוד כאלו, כיד הדמיון הטובה עליכם.
אפשר להשתמש עם כלי ה-GREP ע"י VBA, לחיפוש והחלפה בוורד!
אך נראה לי שיש איזה הגבלות בחיפוש (הלוואי הייתי מכיר שפת ה-GREP).
לחפש משהו
קוד:
Sub GREP_in_Word()
On Error Resume Next
Application.VBE.ActiveVBProject.References.AddFromFile "C:\WINDOWS\system32\vbscript.dll\3"
Set re = New RegExp
With re
.Pattern = InputBox("Enter search pattern string:", "Search with GREP", "")
.MultiLine = True
.Global = True
.IgnoreCase = False
End With
Set oMatches = re.Execute(ActiveDocument.Range)
If oMatches.Count <> 0 Then
ActiveDocument.Range(start:=oMatches.Item(0).FirstIndex, End:=oMatches.Item(0).FirstIndex + oMatches.Item(0).Length).Select
Else
MsgBox "No Matches."
End If
End Sub
קוד:
Sub GREP()
On Error Resume Next
Application.VBE.ActiveVBProject.References.AddFromFile "C:\WINDOWS\system32\vbscript.dll\3"
Set re = New RegExp
With re
.Pattern = "(^.\w* )"
.MultiLine = True
.Global = True
End With
Set oMatches = re.Execute(ActiveDocument.Range)
For i = oMatches.Count - 1 To 0 Step -1
With oMatches.Item(i)
Set myrng = ActiveDocument.Range(start:=.FirstIndex, End:=.FirstIndex + .Length)
End With
With myrng
.Bold = True
.Text = re.Replace(.Text, "$1")
'.InsertBefore "@AA"
End With
Next
End Sub
וכמובן אפשר להוסיף עוד כאלו, כיד הדמיון הטובה עליכם.