فهرست مطالب
اگر به دنبال راه حل یا ترفندهای خاصی برای پاک کردن محتویات محدوده با Excel VBA هستید، در جای درستی آمده اید. چند مرحله آسان برای پاک کردن محتویات محدوده با Excel VBA وجود دارد. این مقاله هر مرحله را با تصاویر مناسب به شما نشان می دهد تا بتوانید به راحتی آنها را برای هدف خود اعمال کنید. بیایید وارد بخش مرکزی مقاله شویم.
دانلود کتاب تمرین تمرین
می توانید کتاب تمرین تمرین را از اینجا دانلود کنید:
پاک کردن محتوای محدوده .xlsm
پاک کردن محتویات محدوده با Excel VBA: 3 مورد
فرض کنید، یک مجموعه داده دارید که ممکن است بخواهید مجدداً از پاک کردن سلول های موجود استفاده کنید. بنابراین، می توانید از کد VBA برای پاک کردن محتویات یک فایل اکسل استفاده کنید. در این بخش، روش های سریع و آسان برای پاک کردن محتویات محدوده با Excel VBA در سیستم عامل ویندوز را به شما نشان می دهم. در این مقاله توضیحات مفصلی با تصاویر واضح از هر چیز خواهید یافت. من اینجا از نسخه مایکروسافت 365 استفاده کرده ام. اما می توانید از هر نسخه دیگری که در دسترس است استفاده کنید. اگر هر چیزی از این مقاله در نسخه شما کار نمی کند، برای ما نظر بگذارید.
مورد 1: پاک کردن تمام محتویات محدوده
می توانید استفاده کنید هر دو دستور Clear و Delete Command برای پاک کردن محتویات یک محدوده خاص در کاربرگ فعلی یا کاربرگ های دیگر حتی از سایر کتاب های کار نیز. من خواهمهمه موارد را یکی یکی به شما نشان می دهد.
i. پاک کردن محتوای محدوده خاص سلول ها
اگر می خواهید محتویات یک محدوده خاص را پاک کنید، مراحل زیر را دنبال کنید:
📌 مراحل:
- برای این کار، ابتدا به نوار بالا بروید و Developer را فشار دهید، سپس گزینه Visual Basic را از منو فشار دهید.
- شما اگر برگه Developer را اضافه نکرده اید، می توانید از ALT + F11 برای باز کردن پنجره "Microsoft Visual Basic for Applications" استفاده کنید.
- اکنون، پنجره ای با نام "Microsoft Visual Basic for Applications" ظاهر می شود. در اینجا از نوار منوی بالا، روی "Insert" فشار دهید و یک منو ظاهر می شود. از میان آنها، گزینه "Module" را انتخاب کنید.
- اکنون، یک "Module" جدید پنجره ظاهر می شود. و این کد VBA را در کادر قرار دهید.
با استفاده از Clear Command:
4597
- برای اجرای کد به منوی بالا بروید، گزینه Run را فشار دهید، و در اینجا چند گزینه دیگر باز می شود و Run Sub/UserForm <2 را انتخاب کنید>همچنین می توانید به سادگی F5 را برای اجرای کد فشار دهید.
- با استفاده از دستور Clear سلول ها پاک خواهند شد همچنین قالب بندی نیز حذف خواهد شد. اما سلول های خالی آنجا خواهند بود.
با استفاده از دستور Delete:
شما همچنین می توانید از استفاده کنید به جای دستور Clear دستور را حذف کنید. سپس آن را بچسبانیدکد زیر در ماژول وجود دارد.
8541
با استفاده از دستور Delete، زمانی که کد را اجرا می کنید، محدوده انتخاب شده سلول ها به طور کامل حذف می شود.
بیشتر بخوانید: Excel VBA: اگر سلول حاوی مقادیر خاصی باشد، محتویات را پاک کنید
تفاوت بین Clear and Delete Command در Excel VBA:
تفاوت اصلی بین دستورات Clear و Delete در Excel VBA این است که دستور حذف محدوده انتخاب شده سلول ها را به طور کامل حذف می کند و دستور Clear فقط مقدار سلول و قالب بندی را حذف می کند اما سلول خالی آنجا خواهد بود.
ii. پاک کردن محتویات کاربرگ کامل
اگر می خواهید تمام سلول های یک کاربرگ را پاک کنید، از کد زیر استفاده کنید. در اینجا، من در حال پاک کردن مطالب از کاربرگ به نام "1.2" هستم. شما باید نام کاربرگ را که می خواهید در کاماهای معکوس پاک کنید، وارد کنید.
1313
همچنین، می توانید از دستور Delete برای حذف تمام سلول های استفاده شده در یک کاربرگ استفاده کنید. سپس باید از کد زیر استفاده کنید. فقط نام کاربرگ را در کاماهای معکوس تغییر دهید.
1257
iii. پاک کردن محتوای کاربرگ فعال
گاهی اوقات، ممکن است لازم باشد فقط محتویات کاربرگ فعال را پاک کنید. در این مورد، شما باید یک کد ساده داده شده در زیر را وارد کنید:
7565
همچنین می توانید از دستور delete برای حذف کامل سلول ها ازکاربرگ فعال برای این کار، کد زیر را در ماژول قرار دهید.
Sub Delete_Contents_Range()
ActiveSheet.Cells.Delete
End Sub
بیشتر بخوانید: تفاوت بین حذف و پاک کردن محتوا در اکسل
مورد 2: پاک کردن محتویات محدوده با حفظ قالب بندی
در روش های قبلی متوجه شده اید که در حال حذف هستید مقادیر سلول در امتداد قالب بندی سلول نیز. بنابراین، اگر میخواهید مقادیر سلولها را فقط در حالی که قالببندی یکسان نگه دارید حذف کنید .
i. Contents of Specific Range
می توانید از دستور ClearContents در Excel VBA برای پاک کردن محتویات یک محدوده خاص استفاده کنید. برای این کار، کد زیر را در ماژول قرار دهید.
7845
در نتیجه، هنگامی که کد را اجرا می کنید، می بینید که سلول های انتخاب شده پاک شده اند اما فرمت ها هنوز باقی مانده اند. .
بیشتر بخوانید: نحوه پاک کردن سلول ها با مقدار معین در اکسل (2 روش)
ii محتویات کاربرگ خاص
وقتی می خواهید محتویات کاربرگ خاص را پاک کنید و در عین حال فرمت ها را ثابت نگه دارید، باید از کد زیر استفاده کنید:
4285
توضیح کد VBA
میخواهید یک کاربرگ را با هر نام دیگری فراخوانی کنید، سپس نام کاربرگ را در کاماهای معکوس وارد کنید.
iii. محتویات کتاب کار دیگر
همچنین می توانید محتوای کتاب کار دیگر را با استفاده از VBA پاک کنید. اما، برای این، باید آن کتاب کار را باز نگه دارید. برای این کار از کد زیر استفاده کنید:
7290
🔎 توضیح کد VBA:
- Workbooks("file 1") Workbook را با نام "File 1" فراخوانی میکند. هنگام استفاده از کتابهای کاری خود، باید نام کتاب کار را در کاماهای معکوس وارد کنید.
- Worksheets ("Sheet1") در حال فراخوانی کاربرگ با نام "Sheet 1" است. برای فراخوانی هر کاربرگ دیگری، فقط نام کاربرگ را به جای وارد کنید. "Sheet 1" در این کد.
- و، Range("B3:D13") محدوده سلول هایی را که پاک می شوند را مشخص می کند. میتوانید محدوده سلولها را بنا به نیاز خود ویرایش کنید.
بیشتر بخوانید: نحوه پاک کردن مطالب بدون حذف فرمول با استفاده از VBA در اکسل
مورد 3: محتویات محدوده خاص همه کاربرگ ها را به یکباره پاک کنید
اگر نیاز دارید محتویات محدوده خاصی از کاربرگ های متعدد را پاک کنید میتوانید با استفاده از یک کد VBA این کار را یکباره انجام دهید. برای انجام این کار باید از حلقه For استفاده کنید. این کد را در ماژول جایگذاری کنید تا محتویات محدوده B2:D4 از همه کاربرگها پاک شود. اگر می خواهید محدوده سلولی را تغییر دهید، 4 را ویرایش کنیدخط و محدوده داده خود را وارد کنید.
2779
چیزهایی که باید به خاطر بسپارید
- استفاده از دستور Clear فقط مقادیر و قالبهای سلول را پاک کنید.
- دستور حذف سلولها را بهطور کامل حذف میکند.
- ClearContents فرمان فقط مقادیر سلولها را پاک میکند و فرمت های سلول را دست نخورده نگه دارید.
نتیجه
در این مقاله، نحوه پاک کردن محتویات محدوده با Excel VBA را پیدا کرده اید. امیدوارم این مقاله برای شما مفید بوده باشد. میتوانید از وبسایت ما ExcelWIKI دیدن کنید تا محتوای مرتبط با اکسل را بیشتر بدانید. لطفاً نظرات، پیشنهادات یا سؤالات خود را در بخش نظرات زیر ارسال کنید.