فهرست مطالب
این آموزش نشان میدهد که چگونه میتوانید با استفاده از کد VBA و ابزار Workbook Manager، کاربرگهای اکسل را بهسرعت به ترتیب حروف الفبا مرتب کنید.
Microsoft Excel راههای سریع و آسانی را برای مرتب کردن ارائه میکند. ستون ها یا ردیف ها به ترتیب حروف الفبا. اما تنها یک روش برای تنظیم مجدد کاربرگ ها در اکسل وجود دارد - آنها را به موقعیت دلخواه در نوار برگه برگه بکشید. وقتی صحبت از حروف الفبا کردن برگه ها در یک کتاب کار واقعاً بزرگ می شود، ممکن است این راه طولانی و اشتباه باشد. به دنبال جایگزینی برای صرفه جویی در زمان هستید؟ فقط دو مورد وجود دارد: کد VBA یا ابزارهای شخص ثالث.
نحوه حروف الفبا کردن برگه ها در اکسل با VBA
در زیر سه نمونه کد VBA برای مرتب سازی اکسل خواهید دید. برگهها بر اساس انتخاب کاربر صعودی، نزولی و در هر دو جهت هستند.
به این معنی که شما تجربهای با VBA دارید، ما فقط مراحل اولیه اضافه کردن یک ماکرو به کاربرگ شما را بیان میکنیم:
- در کتاب کار اکسل خود، Alt + F11 را فشار دهید تا ویرایشگر ویژوال بیسیک باز شود.
- در پنجره سمت چپ، روی ThisWorkbook کلیک راست کرده و سپس روی Insert<کلیک کنید. 2> > Module .
- کد VBA را در پنجره Code جایگذاری کنید.
- F5 را فشار دهید تا ماکرو اجرا شود.
برای دستورالعمل های گام به گام دقیق، لطفاً به نحوه درج و اجرای کد VBA در اکسل مراجعه کنید.
نکته. اگر میخواهید ماکرو را برای استفاده بیشتر نگه دارید، حتماً فایل خود را بهعنوان یک کتاب کار با ماکرو اکسل (xlsm.) ذخیره کنید.
بهعنوان روش دیگر، میتوانید کتاب کار نمونه Alphabetize Excel Tabs را دانلود کنید، در صورت درخواست محتوا را فعال کنید و ماکرو مورد نظر را مستقیماً از آنجا اجرا کنید. کتاب کار حاوی ماکروهای زیر است:
- TabsAscending - مرتب کردن برگه ها بر اساس حروف الفبا از A تا Z.
- TabsDescending - مرتب کردن برگه ها در ترتیب معکوس، از Z به A.
- AlphabetizeTabs - مرتب سازی برگه های برگه در هر دو جهت، صعودی یا نزولی.
با نمونه کار دانلود و باز کردن در اکسل خود را باز کنید، کتاب کار خود را در جایی که می خواهید برگه ها را حروف الفبا کنید باز کنید، Alt + F8 را فشار دهید، ماکرو مورد نظر را انتخاب کنید و روی Run کلیک کنید.
بر اساس حروف الفبا، برگه های اکسل را از A به Z<15 مرتب کنید>
این ماکرو کوچک برگهها را در کتاب کار فعلی به ترتیب الفبایی صعودی مرتب میکند، ابتدا کاربرگهایی که نام آنها با اعداد شروع میشود، سپس برگههایی از A تا Z.
Sub TabsAscending() برای i = 1 به Application.Sheets.Count برای j = 1 به Application.Sheets.Count - 1 اگر UCase$(Application.Sheets(j).Name) > UCase$(Application.Sheets(j + 1).Name) سپس Sheets(j).Move after:=Sheets(j + 1) End If Next Next MsgBox "برگه ها از A به Z مرتب شده اند." End Subبرگه های اکسل را از Z به A مرتب کنید
اگر می خواهید برگه های خود را بر اساس ترتیب الفبایی نزولی (Z تا A، سپس برگه هایی با نام عددی) مرتب کنید، سپس از کد زیر:
الفبایی کردن برگهها به صورت صعودی یا نزولی
این ماکرو به کاربران شما اجازه میدهد تصمیم بگیرند که چگونه کاربرگها را در یک کتاب کار مشخص، بر اساس حروف الفبا از A به Z یا به ترتیب معکوس مرتب کنند.
از آنجایی که کادر محاوره ای استاندارد (MsgBox) در Excel VBA فقط امکان انتخاب از میان تعداد انگشت شماری از دکمه های از پیش تعریف شده را می دهد، ما فرم خودمان (UserForm) را با سه دکمه سفارشی ایجاد می کنیم: A به Z ، Z به A ، و لغو .
برای این کار، ویرایشگر ویژوال بیسیک را باز کنید، روی ThisWorkbook راست کلیک کنید و روی Insert ><کلیک کنید. 1>UserForm . نام فرم خود را SortOrderFrom بگذارید و 4 کنترل به آن اضافه کنید: یک برچسب و سه دکمه:
بعد، F7 را فشار دهید (یا روی فرم دوبار کلیک کنید. ) پنجره Code را باز کرده و کد زیر را در آنجا قرار دهید. کد رهگیری دکمه کلیک می کند و یک برچسب منحصر به فرد به هر دکمه اختصاص می دهد:
Private Sub CommandButton1_Click() Me.Tag = 1 Me.Hide End Sub Private Sub CommandButton2_Click() Me.Tag = 2 Me.Hide End Sub Private Sub CommandButton3_Click () Me.Tag = 0 Me.Hide End Subبسته به اینکه کاربر روی دکمه A به Z یا Z to A در فرم شما کلیک کند، برگه ها را مرتب کنیدبه ترتیب حروف الفبا صعودی (انتخاب شده به طور پیش فرض) یا به ترتیب حروف الفبا نزولی. یا در صورت لغو فرم را ببندید و کاری انجام ندهید. این کار با کد VBA زیر انجام می شود که به روش معمول از طریق Insert > Module انجام می شود.
Sub AlphabetizeTabs() Dim SortOrder As Integer SortOrder = showUserForm If SortOrder = 0 سپس از Sub برای x = 1 به Application.Sheets.Count برای y = 1 به Application.Sheets.Count - 1 اگر SortOrder = 1 سپس If UCase$(Application.Sheets(y).Name) > UCase$(Application.Sheets(y + 1).Name) سپس Sheets(y).Move after:=Sheets(y + 1) End If ElseIf SortOrder = 2 then If UCase$(Application.Sheets(y).Name) &آن؛ UCase$(Application.Sheets(y + 1).Name) سپس Sheets(y).Move after:=Sheets(y + 1) End If End If Next End End Sub تابع فرعی showUserForm() به عنوان عدد صحیح showUserForm = 0 بارگیری SortOrderForm SortOrderForm .نمایش (1) showUserForm = SortOrderForm.Tag Unload SortOrderForm End Functionاگر هنوز با VBA راحت نیستید، می توانید به سادگی نمونه کار ما را برای حروف الفبا کردن برگه ها دانلود کنید، آن را در اکسل خود در کنار فایل خود در جایی که می خواهید باز کنید. برای مرتب کردن برگه ها و اجرای ماکرو AlphabetizeTabs از کتاب کار خود:
ترتیب مرتب سازی ترجیحی را انتخاب کنید، مثلاً A تا Z ، و نتایج را مشاهده کنید:
نکته. با VBA، شما همچنین می توانید کپی هایی از کاربرگ های Excel خود را ایجاد کنید. کد در اینجا موجود است: چگونهبرگه تکراری در اکسل با VBA.
نحوه مرتب کردن برگه های اکسل بر اساس حروف الفبا با Ultimate Suite
کاربران Ultimate Suite ما برای اکسل مجبور نیستند با VBA سر و کله بزنند - آنها یک مولتی دارند. -کارکردی Workbook Manager در اختیار آنها:
با این ابزار اضافه شده به نوار اکسل شما، حروف الفبا کردن برگه ها با یک کلیک یک دکمه انجام می شود، دقیقاً همانطور که باید باشد!
اگر کنجکاو هستید که این و بیش از 70 ابزار حرفهای دیگر برای Excel را بررسی کنید، نسخه آزمایشی Ultimate Suite ما برای دانلود در اینجا موجود است.
من از شما متشکرم شما برای خواندن و امیدواریم که شما را در هفته آینده در وبلاگ خود ببینیم!