سام سندی دارد که شامل چند جدول است که میخواهد چند ردیف را در آنها حذف کند. سطرها حاوی متن خاصی هستند که مطمئناً می تواند با استفاده از Find and Replace آنها را حذف کند، اما او می خواهد کل ردیف هایی را که حاوی آن متن هستند حذف کند.
هیچ راهی برای انجام این کار (حذف ردیف ها) با استفاده از ویژگی های معمولی Find and Replace Word وجود ندارد. در عوض، باید از یک ماکرو استفاده کنید که متن را پیدا کند و سپس کل ردیف را حذف کند. در اینجا یک ماکرو نسبتا ساده وجود دارد که این کار را انجام می دهد:
Sub DeleteRowWithSpecifiedText()
Dim sText As String
sText = InputBox("Enter text for row to be deleted")
Selection.Find.ClearFormatting
With Selection.Find
.Text = sText
.Wrap = wdFindContinue
End With
Do While Selection.Find.Execute
If Selection.Information(wdWithInTable) Then
Selection.Rows.Delete
End If
Loop
End Sub
این ماکرو ابتدا یک کادر ورودی را نمایش می دهد که از کاربر می خواهد متن مورد جستجو را مشخص کند. سپس شروع به جستجو برای تمام نمونه های آن متن می کند. اگر نمونهای پیدا شد، انتخاب بررسی میشود تا مطمئن شویم که در یک جدول است. اگر اینطور باشد، کل ردیف حذف می شود و ماکرو به رخداد بعدی می رود.