روی در بسیاری از برگههای کاری خود، از مرتبسازی و فیلتر کردن زیاد استفاده میکند. در تب Data روبان، در گروه Sort & Filter، ابزار Clear وجود دارد. این ابزار تمام تنظیمات فیلترینگ و مرتب سازی را پاک می کند. روی به طور معمول نیاز به پاک کردن تنظیمات فیلتر دارد، اما او دوست دارد تنظیمات مرتبسازی او تحت تأثیر پاکسازی قرار نگیرد. او نمیپرسد آیا راهی برای تغییر نحوه عملکرد این ابزار یا پاک کردن تنظیمات فیلتر در یک عمل وجود دارد.
این یک مشکل جالب برای تحقیق بود، و کمی تکان دادن و تکان دادن نیاز داشت. به نظر می رسد که اکسل به شما اجازه می دهد تا تنظیمات مرتب سازی را برای فیلترهایی که روی یک مجموعه داده اعمال می کنید، تعریف کنید. برای مشاهده عملی آن، مراحل زیر را دنبال کنید:
- یک کتاب کار که دارای مقداری داده است باز کنید یا یک کتاب کار ایجاد کنید که دارای داده هایی باشد که بتوانید آنها را مرتب و فیلتر کنید.
- یک سلول در داده ها را انتخاب کنید.
- تب Data روبان را نمایش دهید.
- روی ابزار Filter در گروه Sort & Filter کلیک کنید. اکسل فلش های کشویی را در بالای هر ستون در داده های شما قرار می دهد.
- روی فلش کشویی در بالای یکی از ستون ها کلیک کنید.
توجه داشته باشید که منوی کشویی که ظاهر می شود به شما امکان می دهد انتخاب کنید کدام داده در ستون فیلتر شود. با این حال، این جایی است که مردم معمولاً از نگاه کردن خودداری می کنند. جالب است که در بالای منوی کشویی چند کنترل مرتب سازی وجود دارد. اگر از این کنترل ها استفاده می کنید، نتایج فیلتر شده ای که اکسل نمایش می دهد مطابق با مشخصات شما فیلتر می شوند.
اگر در این مرحله ضبط کننده ماکرو را روشن کنید (پس از اعمال فیلتری که شامل مرتب سازی است) و بر روی ابزار Clear کلیک کنید، این ماکرو است که توسط اکسل ضبط می شود:
Sub Macro1()
Macro1 Macro
ActiveWorkbook.Worksheets("Sheet1").AutoFilter.Sort.SortFields.Clear
ActiveSheet.ShowAllData
End Sub
توجه داشته باشید که دو خط در ماکرو ضبط شده وجود دارد. خط اول تنظیمات مرتب سازی را پاک می کند و خط دوم تمام تنظیمات فیلتر را پاک می کند. اگر همان مراحل را بدون اینکه ابتدا یک تنظیم مرتبسازی را در منوی فیلتر کشویی در بالای ستون انتخاب کرده باشید، ثبت کنید، اکسل خط اول را شامل نمیشود.
نتیجه این کار این است که شما به راحتی می توانید ماکرو تک خطی خود را ایجاد کنید که هرگونه فیلتر را حذف می کند اما تنظیمات مرتب سازی انجام شده از طریق کشویی فیلتر را حفظ می کند. ماکرو ساده به شکل زیر است:
Sub ClearFilter()
ActiveSheet.ShowAllData
End Sub
لازم به ذکر است که اگر فیلترینگ را خاموش کنید (با کلیک دوم بر روی ابزار Filter)، اکسل به طور خودکار تنظیمات فیلتر و مرتب سازی را که ممکن است اعمال کرده باشید پاک می کند. اگر میخواهید تنظیمات مرتبسازی - به ویژه تنظیمات پیچیده مرتبسازی - را خارج از چارچوب فیلتر حفظ کنید، بهتر است یک ماکرو از مراحلی که برای مرتبسازی دادههای خود طی میکنید ثبت کنید.