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

آیا به طور معمول با کاربرگ هایی کار می کنید که حاوی ده ها (یا صدها) سلول نام گذاری شده هستند و اکثر آن نام ها غیر ضروری هستند؟ پاک کردن نام ها می تواند کار بزرگی باشد، اما خلاص شدن از شر نام هایی که به آن ها نیاز ندارید می تواند ورک بوک شما را کوچک تر و کارآمدتر کند. مشکل این است که چگونه می توان یکدفعه از شر بسیاری از نام های غیر ضروری خلاص شد؟ مطمئناً می توانید آنها را یکی یکی حذف کنید، اما چنین فرآیندی به سرعت خسته کننده می شود. همچنین می توانید از Name Manager برای حذف آن ها استفاده کنید ( Ctrl+F3 را فشار دهید )، اما این نیز می تواند بسیار وقت گیر باشد.

یک راه حل ممکن این است که به سادگی یک Workbook جدید ایجاد کنید و سلول ها را از Workbook قدیمی به Workbook جدید کپی کنید. سلول های ورک بوک قدیمی را برجسته کنید، از کلیدهای Ctrl+C برای کپی کردن آنها استفاده کنید، سپس آنها را در کاربرگ های جدید جای گذاری کنید. این تقریباً همه چیز را از ورک بوک قدیمی کپی می کند - فرمول ها، قالب بندی و غیره. روی تنظیمات چاپ یا نام محدوده کپی نمی شود. تنها کار باقی مانده این است که چند نامی را که می خواهید در ورک بوک جدید دوباره تعریف کنید.

اگر ترجیح می دهید با ورک بوک قدیمی (یکی که همه نام ها را دارد) کار کنید، بهتر است یک ماکرو ایجاد کنید که حذف نام را برای شما انجام دهد. شما به یک ماکرو نیاز دارید که به شما امکان می دهد همه نام ها را به جز نام هایی که می خواهید نگه دارید حذف کنید. روش زیر یک روش ساده است که این کار را انجام می دهد:

Sub DeleteSomeNames()
    Dim vKeep
    Dim nm As Name
    Dim x As Integer
    Dim AWF As WorksheetFunction

    Add Names to keep here
    vKeep = Array("Name1", "Name2")

    Set AWF = Application.WorksheetFunction
    For Each nm In ActiveWorkbook.Names
        x = 0
        On Error Resume Next
        x = AWF.Match(nm.Name, vKeep, 0)
        On Error GoTo 0
        If x = 0 Then
            nm.Delete
        End If
    Next
    Set AWF = Nothing
End Sub

قبل از استفاده از ماکرو، خطی که آرایه vKeep را ایجاد می کند را تغییر دهید. به سادگی نام هایی را که می خواهید در آرایه نگه دارید، وارد کنید، هر نام با نقل قول احاطه شده و با کاما از هم جدا شده است. (در مثالی که در اینجا نشان داده شده است، نام های "Name1" و "Name2" حفظ می شوند.) ماکرو در میان همه نام های ورک بوک حلقه می زند و از تابع Match استفاده می کند تا ببیند آیا نام یکی در آرایه است یا خیر. اگر اینطور نیست، حذف می شود.

اگر ترجیح می دهید از یک راه حل شخص ثالث برای مدیریت نام ها در ورک بوک خود استفاده کنید، یک انتخاب عالی افزونه Name Manager است که توسط Jan Karel Pieterse نوشته شده است. اطلاعات بیشتر در مورد افزونه را می توانید در اینجا بیابید:

https://jkp-ads.com/excel-name-manager.asp
اگر خواستی، با این لینک از ما حمایت کن

پاسخ شما

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

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

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

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

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

23.2k سوال

8.5k پاسخ

608 دیدگاه

9.7k کاربر

68 نفر آنلاین
1 عضو و 67 مهمان در سایت حاضرند
اعضای حاضر در سایت

بازدید امروز: 4537
بازدید دیروز: 8462
بازدید کل: 15415229
...