ایجاد سوال
dark_mode
0 دوستدار 0 امتیاز منفی
7 visibility
موضوع: آفیس توسط:

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

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

image

شکل 1. تب Replace از کادر محاوره ای Find and Replace.

  1. Ctrl+H را فشار دهید . اکسل زبانه Replace را در کادر گفتگوی Find and Replace نمایش می دهد. (شکل 1 را ببینید.)
  2. در کادر Find What، یک ستاره و دنباله پایان خود را وارد کنید. بنابراین، در مورد گاریس، " *x27g " (بدون علامت نقل قول) را وارد می کند .
  3. مطمئن شوید که کادر Replace With خالی است.
  4. روی 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)، آنگاه همه چیزهایی که در آن دنباله وجود دارد حذف می شود.

اگر خواستی، با این لینک از ما حمایت کن

پاسخ شما

looks_5نام شما برای نمایش - اختیاری
حریم شخصی : آدرس ایمیل شما محفوظ میماند و برای استفاده های تجاری و تبلیغاتی به کار نمی رود
عدد چهار رقمی در تصویر را وارد کنید

برای جلوگیری از این تایید در آینده, لطفا وارد شده یا ثبت نام کنید.
اگر حساب گوگل دارید به راحتی وارید شوید

0 پاسخ وجود دارد

سوال مشابهی یافت نشد

برای دسترسی راحت به مطالب سایت ، اپلیکیشن سایت را نصب کنید
و لطفا بعد از نصب امتیاز دهید. با تشکر از حمایت شما

23.2k سوال

8.5k پاسخ

608 دیدگاه

9.7k کاربر

98 نفر آنلاین
0 عضو و 98 مهمان در سایت حاضرند
بازدید امروز: 1111
بازدید دیروز: 14599
بازدید کل: 15082742
...