نمایش مطمئن نام روز هفته هر تاریخ در اکسل با فرمول CHOOSE و WEEKDAY
برنامه کشیک اورژانس، لیست حضور و غیاب، یا حتی محاسبه اضافه کار روزهای تعطیل، همه به یک اطلاعات ساده نیاز دارند؛ هر تاریخ چه روزی از هفته است. اکسل یک فرمول سریع برای این کار دارد، اما همان فرمول سریع یک مشکل جدی هم دارد که کمتر کسی از آن خبر دارد.
فرمول سریع TEXT و مشکل پنهانش
رایج ترین فرمول برای نمایش نام روز هفته این است:
=TEXT(تاریخ,"dddd")
مشکل اینجاست که نام روز خروجی این فرمول به زبان اکسل یا ویندوز شما بستگی دارد، نه به محتوای فایل. روی همان فایل، با همان فرمول، در یک سیستم ممکن است پنجشنبه ببینید و در سیستم دیگر Thursday؛ یعنی این فرمول برای فایلی که قرار است بین چند کاربر یا چند کامپیوتر رد و بدل شود، قابل اعتماد نیست.

ترفند مطمئن؛ ترکیب WEEKDAY و CHOOSE
برای نمایش نام روز که همیشه فارسی باشد و به هیچ تنظیم زبانی وابسته نباشد، به جای TEXT از ترکیب دو تابع WEEKDAY و CHOOSE استفاده کنید:
=CHOOSE(WEEKDAY(تاریخ,16),"شنبه","یکشنبه","دوشنبه","سهشنبه","چهارشنبه","پنجشنبه","جمعه")
تابع WEEKDAY یک عدد بین ۱ تا ۷ برمی گرداند که نشان می دهد تاریخ داده شده کدام روز هفته است. آرگومان دوم آن (return_type) تعیین می کند هفته از کدام روز شروع شود؛ عدد ۱۶ تنها گزینه ای است که هفته را از شنبه شروع می کند، دقیقا مطابق هفته کاری ایران. سپس CHOOSE همان عدد را به نام روز مقابلش در لیست تبدیل می کند.

چون نام های داخل CHOOSE مستقیم در خود فرمول تایپ شده اند، خروجی همیشه فارسی است؛ چه فایل روی کامپیوتر شما باز شود، چه روی کامپیوتر همکارتان با زبان دیگر.

کاربرد عملی؛ شناسایی خودکار روز تعطیل
همین عدد WEEKDAY را می شود مستقیم برای پرچم گذاری روز تعطیل هم به کار برد؛ چون در نوع ۱۶، جمعه همیشه عدد ۷ است:
=IF(WEEKDAY(تاریخ,16)=7,"تعطیل رسمی","روز کاری")
در برنامه کشیک یا لیست حضور، این فرمول به طور خودکار مشخص می کند کدام روز کشیک روی تعطیلی رسمی افتاده و باید با نرخ اضافه کار بالاتر محاسبه شود، بدون نیاز به مراجعه دستی به تقویم برای هر ردیف.
نکات کاربردی
- اگر فایل فقط روی کامپیوتر خودتان با زبان فارسی باز می شود، TEXT(تاریخ,”dddd”) کافی است؛ اما اگر قرار است فایل دست به دست یا برای گزارش گیری خودکار استفاده شود، همیشه CHOOSE+WEEKDAY را ترجیح دهید.
- برای هفته میلادی معمول (شروع از دوشنبه یا یکشنبه) از return_type های ۱، ۲ یا ۱۱ استفاده کنید؛ فقط نوع ۱۶ مخصوص هفته ای است که از شنبه شروع می شود.
- می شود آرایه نام روزها را در یک ستون کمکی جداگانه نوشت و با INDEX به جای CHOOSE به آن ارجاع داد؛ نتیجه یکسان است، فقط فرمول کوتاه تر می شود.
- برای فرمت شرطی رنگی کردن روزهای تعطیل، همان فرمول =WEEKDAY(تاریخ,16)=7 را مستقیم در قانون فرمت شرطی هم می شود استفاده کرد.
📄 دانلود فایل اکسل نمونه «نمایش مطمئن نام روز هفته» — شامل برنامه کشیک اورژانس نمونه با هر دو فرمول (TEXT وابسته به زبان و CHOOSE+WEEKDAY مطمئن)، و ستون پرچم گذاری خودکار روز تعطیل برای محاسبه اضافه کار، آماده برای تمرین.
منبع : سایت حسابداری بیمارستان
کانال تلگرام @hospitalaccounting