گری یک کاربرگ دارد که حاوی اطلاعات زیادی است که از منابع دیگر چسبانده شده است. گاهی اوقات سلول ها حاوی کاراکترهای ناخواسته هستند و حذف تمام کاراکترهای ناخواسته سلول به سلول می تواند خسته کننده باشد. گری می تواند بگوید که تمام کاراکترهای ناخواسته همیشه به دنباله ای مانند "x27g" ختم می شوند، اگرچه تعداد کاراکترهای قبل از این دنباله می تواند از سلولی به سلول دیگر متفاوت باشد. او نمیپرسد آیا راهی برای استفاده از Find and Replace برای حذف نه تنها دنباله، بلکه همه چیزهای قبل از دنباله از تمام سلولهای یک کاربرگ وجود دارد.
در نگاه اول، ممکن است به نظر برسد که این کار به بهترین شکل برای یک ماکرو مناسب است. به هرحال، موضوع این نیست. در واقع می توانید کار را با استفاده از Find and Replace with wildcards انجام دهید. آزمایش نشان می دهد که این به خوبی کار خواهد کرد:

شکل 1. تب Replace از کادر محاوره ای Find and Replace.
- Ctrl+H را فشار دهید . اکسل زبانه Replace را در کادر گفتگوی Find and Replace نمایش می دهد. (شکل 1 را ببینید.)
- در کادر Find What، یک ستاره و دنباله پایان خود را وارد کنید. بنابراین، در مورد گاریس، " *x27g " (بدون علامت نقل قول) را وارد می کند .
- مطمئن شوید که کادر Replace With خالی است.
- روی Replace All کلیک کنید.
اگر این برای شما کار نمی کند، ممکن است برخی از گزینه های Find and Replace به درستی تنظیم نشده باشند. می توانید برگه Replace در کادر محاوره ای Find and Replace را دوباره نمایش دهید، اما این بار روی دکمه Options کلیک کنید. این منجر به یک کادر گفتگوی گسترده می شود. مطمئن شوید که هیچ قالب بندی تنظیم نشده باشد، لیست کشویی Look In روی Formulas تنظیم شده باشد و کادر بررسی Match Entire Cell Contents پاک شود.
اگر به دلایلی ترجیح می دهید از یک ماکرو برای جایگزینی استفاده کنید، موارد زیر به خوبی کار خواهند کرد.
Sub DeleteBefore()
Dim rCell As Range
Dim sFind As String
Dim iLen As Integer
Dim iFind As Integer
sFind = "x27g" Change as desired
iLen = Len(sFind)
For Each rCell In Selection
iFind = InStr(rCell, sFind)
If iFind > 0 Then
rCell.Value = Mid(rCell, iFind + iLen)
End If
Next
End Sub
این یک ماکرو ساده است که به هر سلول در هر محدوده ای که انتخاب کرده اید نگاه می کند. اگر سلول حاوی دنباله پایانی شما باشد (مشخص شده در متغیر sFind)، آنگاه همه چیزهایی که در آن دنباله وجود دارد حذف می شود.