فرانسین یک سری آدرس در یک کاربرگ دارد. شماره خانه ها در یک ستون (124، 127، 130 و ...) و نام خیابان در ستون مجاور (خیابان افرا، خیابان الم و...) قرار دارد. او باید لیست را ابتدا بر اساس نام خیابان و سپس بر اساس شماره خانه با اعداد زوج ابتدا به ترتیب صعودی و سپس اعداد فرد بعدی به ترتیب نزولی مرتب کند. این به او این امکان را می دهد که فهرستی از خانه ها را برای یک تور پیاده روی ایجاد کند. سپس مردم می توانند از سمت زوج خیابان راه بروند، به طرف دیگر بروند و از سمت خیابان با شماره فرد برگردند. او تعجب می کند که چگونه این نوع مرتب سازی را انجام دهد.
اکسل به شما اجازه می دهد تا با استفاده از قابلیت مرتب سازی، اطلاعات را به ترتیب صعودی و نزولی به سرعت مرتب کنید. در حالی که این گزینه در بسیاری از موارد مفید است، این مثال زمانی است که یک فرمول برای تعیین مقداری که می توانید در مرتب سازی خود استفاده کنید ضروری است. چند راه برای انجام این کار وجود دارد.
شما باید ستونی ایجاد کنید که هر آدرس را فرد یا زوج مشخص کند. با فرض اینکه قسمت شماره آدرس در سلول A1 و نام خیابان در B1 باشد، در ستون سوم می توانید این فرمول را وارد کنید:
=IF(ISEVEN(A1),B1&"_0_"&A1,B1&"_1_"&MAX($A$1:$A$19)-A1)
این فرمول نام خیابان را با تعدادی اعداد که فقط برای مرتبسازی هستند برمیگرداند. در این مرحله فرمول را در ستون جدیدی که ایجاد کردید کپی و جایگذاری کنید. هنگامی که فرمول برای هر آدرس وارد شد، می توانید اطلاعات را مرتب کنید. شما فقط باید بر اساس فرمول، به ترتیب صعودی مرتب کنید. اکسل آدرسها را با نام خیابانها به ترتیب حروف الفبا برمیگرداند که در آن اعداد خیابان زوج به ترتیب صعودی هستند و به دنبال آن اعداد فرد خیابانی به ترتیب نزولی هستند.
توجه: در فرمول بالا، فرض میشود که محدوده آدرسها A1:A19 است، که MAX($A$1:$A$19) از آنجا میآید. اگر آدرس های بیشتری وجود دارد، محدوده صحیح را در آن بخش از فرمول قرار دهید.
و روش دیگر استفاده از فرمول زیر است:
=IF(MOD(A1,2)=1,(1+RANK(A1,A:A,1))/2,(COUNT(A:A)+RANK(A1,A:A)+1)/2)
اعداد بازگردانده شده توسط این فرمول اهمیت خاصی ندارند. آنها اساساً یک سفارش نسبی برای یک آدرس بر اساس شماره خانه تعیین می کنند. به سادگی فرمول را در ستونی که ایجاد کردید کپی و جایگذاری کنید و اطلاعات را مرتب کنید. سپس باید لیست را ابتدا بر اساس نام خیابان به ترتیب صعودی و سپس بر اساس فرمول به ترتیب نزولی مرتب کنید. نتیجه این است که آدرس های شما به شکل دلخواه مرتب می شوند.
همچنین میتوانید از همان فرمول MOD مانند زیر برای رویکردی متفاوت استفاده کنید:
=MOD(A1,2)*(9999999-A1*2)+A1
این فرمول دو نوع اعداد را برمیگرداند - عددهای بزرگ برای آدرسهای فرد و عدد کوچک برای آدرسهای زوج. مانند فرمول های قبلی، فرمول را در ستونی که ایجاد کردید کپی و جایگذاری کنید. پس از انجام این کار می توانید اطلاعات را مرتب کنید. شما باید ابتدا بر اساس نام خیابان، سپس بر اساس فرمول، هر دو را به ترتیب صعودی مرتب کنید. اکسل آدرس ها را بر اساس فرمولی که آدرس های زوج را در درجه اول و آدرس های فرد را در درجه دوم قرار می دهد به ترتیب نزولی مرتب می کند.
همانطور که می بینید، تعدادی فرمول وجود دارد که می تواند همان اطلاعات را برگرداند. با آنها بازی کنید و از چیزی که برای شما و پروژه شما منطقی است استفاده کنید.