فرمول WEEKDAY در اکسل برای دریافت روزهای هفته، تعطیلات آخر هفته و روزهای کاری

  • این را به اشتراک بگذارید
Michael Brown

اگر به دنبال یک تابع اکسل برای دریافت روز هفته از تاریخ هستید، در صفحه درستی قرار گرفته اید. این آموزش به شما می آموزد که چگونه از فرمول WEEKDAY در اکسل برای تبدیل تاریخ به نام روز هفته، فیلتر کردن، برجسته کردن و شمارش روزهای آخر هفته یا روزهای کاری و موارد دیگر استفاده کنید.

توابع مختلفی برای کار با تاریخ در اکسل عملکرد روز هفته (WEEKDAY) به ویژه برای برنامه ریزی و زمان بندی مفید است، به عنوان مثال برای تعیین بازه زمانی یک پروژه و حذف خودکار تعطیلات آخر هفته از کل. بنابراین، بیایید نمونه‌ها را یکبار اجرا کنیم و ببینیم چگونه می‌توانند به شما کمک کنند تا با کارهای مختلف مربوط به تاریخ در اکسل کنار بیایید.

    WEEKDAY - تابع اکسل برای روز از week

    تابع Excel WEEKDAY برای برگرداندن روز هفته از یک تاریخ معین استفاده می شود.

    نتیجه یک عدد صحیح است که به طور پیش فرض از 1 (یکشنبه) تا 7 (شنبه) متغیر است. . اگر منطق کسب و کار شما به شمارش متفاوتی نیاز دارد، می توانید فرمول را برای شروع شمارش با هر روز دیگر از هفته پیکربندی کنید.

    تابع WEEKDAY در تمام نسخه های Excel 365 تا 2000 موجود است.

    نحو تابع WEEKDAY به شرح زیر است:

    WEEKDAY(شماره_سریال، [نوع_بازگشت])

    کجا:

    شماره_سریال (الزامی) - تاریخی که می خواهید تبدیل کنید به شماره روز هفته می توان آن را به عنوان یک شماره سریال نشان دهنده تاریخ، به عنوان یک رشته متن در قالب ارائه کردکه اکسل آن را به عنوان ارجاع به سلول حاوی تاریخ یا با استفاده از تابع DATE درک می کند.

    Return_type (اختیاری) - تعیین می کند چه روزی از هفته به عنوان روز اول استفاده شود. . اگر حذف شود، به طور پیش‌فرض روی هفته یکشنبه-شنبه تنظیم می‌شود.

    در اینجا فهرستی از همه مقادیر return_type پشتیبانی شده است:

    Return_type شماره برگشتی
    1 یا حذف شده از 1 (یکشنبه) تا 7 (شنبه)
    2 از 1 (دوشنبه) تا 7 (یکشنبه)
    3 از 0 (دوشنبه) تا 6 (یکشنبه)
    11 از 1 (دوشنبه) تا 7 (یکشنبه)
    12 از 1 (سه شنبه) تا 7 (دوشنبه)
    13 از 1 (چهارشنبه) تا 7 (سه شنبه)
    14 از 1 (پنجشنبه) تا 7 (چهارشنبه)
    15 از 1 (جمعه) تا 7 (پنجشنبه)
    16 از 1 (شنبه) تا 7 (جمعه)
    17 از 1 (یکشنبه) تا 7 (شنبه)

    توجه. مقادیر return_type 11 تا 17 در اکسل 2010 معرفی شدند و بنابراین نمی توان از آنها در نسخه های قبلی استفاده کرد.

    فرمول اساسی WEEKDAY در اکسل

    برای شروع، بیایید ببینیم چگونه برای استفاده از فرمول WEEKDAY در ساده ترین شکل آن برای به دست آوردن شماره روز از تاریخ.

    برای مثال، برای به دست آوردن روز هفته از تاریخ در C4 با پیش فرض یکشنبه - شنبه هفته، فرمول این است:

    0> =WEEKDAY(C4)

    اگر شماره سریال داریدکه نشان دهنده تاریخ است (به عنوان مثال توسط تابع DATEVALUE آورده شده است)، می توانید آن عدد را مستقیماً در فرمول وارد کنید:

    =WEEKDAY(45658)

    همچنین، می توانید تاریخ را به عنوان یک رشته متن محصور شده در علامت نقل قول تایپ کنید. مستقیما در فرمول فقط مطمئن شوید که از قالب تاریخی که اکسل انتظار دارد و می تواند تفسیر کند استفاده کنید:

    =WEEKDAY("1/1/2025")

    یا تاریخ منبع را با استفاده از تابع DATE به روشی 100% مطمئن ارائه کنید:

    =WEEKDAY(DATE(2025, 1,1))

    برای استفاده از نقشه برداری روز به غیر از Sun-Sat پیش فرض، یک عدد مناسب را در آرگومان دوم وارد کنید. به عنوان مثال، برای شروع شمارش روزها از دوشنبه، فرمول به صورت زیر است:

    =WEEKDAY(C4, 2)

    در تصویر زیر، همه فرمول‌ها روز هفته را مطابق با 1 ژانویه 2025 برمی‌گردانند که عبارت است از به عنوان شماره 45658 در اکسل ذخیره می شود. بسته به مقدار تعیین شده در آرگومان دوم، فرمول ها نتایج متفاوتی را ارائه می دهند.

    در نگاه اول، ممکن است به نظر برسد که اعدادی که توسط تابع WEEKDAY بازگردانده شده اند، مفهوم عملی بسیار کمی دارند. اما بیایید از زاویه دیگری به آن نگاه کنیم و در مورد فرمول هایی بحث کنیم که وظایف واقعی را حل می کند.

    نحوه تبدیل تاریخ اکسل به نام روز هفته

    با طراحی، تابع WEEKDAY اکسل روز هفته را به صورت عدد برمی گرداند. برای تبدیل شماره روز هفته به نام روز، از تابع TEXT استفاده کنید.

    برای دریافت اسامی روز کامل ، از کد قالب "dddd" استفاده کنید:

    TEXT(WEEKDAY( date )، "dddd")

    برای بازگشت به اختصارنام روز ، کد قالب "ddd" است:

    TEXT(WEEKDAY( تاریخ )، "ddd")

    برای مثال، برای تبدیل تاریخ در A3 به نام روز هفته ، فرمول این است:

    =TEXT(WEEKDAY(A3), "dddd")

    یا

    =TEXT(WEEKDAY(A3), "ddd")

    راه حل ممکن دیگر استفاده از WEEKDAY همراه با تابع CHOOSE است.

    به عنوان مثال، برای به دست آوردن نام مختصر در روز هفته از تاریخ در A3، فرمول به شرح زیر است:

    =CHOOSE(WEEKDAY(A3),"Sun","Mon","Tus","Wed","Thu","Fri","Sat")

    در اینجا، WEEKDAY یک شماره سریال از 1 (Sun) به 7 (شنبه) برمی‌گرداند. ) و CHOOSE مقدار مربوطه را از لیست انتخاب می کند. از آنجایی که تاریخ در A3 (چهارشنبه) با 4 مطابقت دارد، CHOOSE خروجی "Wed" را صادر می کند که چهارمین مقدار در لیست است.

    اگرچه فرمول CHOOSE برای پیکربندی کمی دست و پا گیرتر است، اما انعطاف پذیری بیشتری را فراهم می کند و به شما امکان می دهد نام روز را در هر قالبی که می خواهید خروجی بگیرید. در مثال بالا، نام های کوتاه شده روز را نشان می دهیم. در عوض، می‌توانید نام‌های کامل، اختصارات سفارشی یا حتی نام‌های روز را به زبانی دیگر ارائه دهید.

    نکته. یکی دیگر از راه‌های آسان برای تبدیل تاریخ به نام روز هفته، استفاده از قالب تاریخ سفارشی است. برای مثال، قالب کد "dddd، mmmm d، yyyy" تاریخ را به صورت " جمعه، 3 ژانویه 2025 " نمایش می دهد در حالی که "dddd" فقط " جمعه " را نشان می دهد. .

    فرمول WEEKDAY اکسل برای یافتن و فیلتر کردن روزهای کاری و تعطیلات آخر هفته

    هنگامی که با لیست طولانی از تاریخ ها سر و کار دارید، ممکن است بخواهید بدانید کدام روزهای کاری و کدام آخر هفته هستند.

    برای شناسایی تعطیلات آخر هفته و روزهای هفته در اکسل، یک دستور IF با تابع WEEKDAY تودرتو بسازید. به عنوان مثال:

    =IF(WEEKDAY(A3, 2)<6, "Workday", "Weekend")

    این فرمول به سلول A3 می رود و در تعداد سلول های مورد نیاز کپی می شود.

    در فرمول WEEKDAY، return_type را تنظیم می کنید. تا 2، که مربوط به هفته دوشنبه و یکشنبه است که در آن دوشنبه روز 1 است. بنابراین، اگر تعداد روزهای هفته کمتر از 6 باشد (از دوشنبه تا جمعه)، فرمول "روز کاری" را برمی گرداند، در غیر این صورت - "آخر هفته".

    برای فیلتر کردن تعطیلات آخر هفته یا روزهای کاری ، فیلتر اکسل را روی مجموعه داده خود اعمال کنید (برگه Data > Filter ) و "آخر هفته" یا "روز کاری".

    در تصویر زیر، روزهای هفته فیلتر شده‌اند، بنابراین فقط آخر هفته‌ها قابل مشاهده هستند:

    اگر دفتر منطقه‌ای سازمان شما بر اساس برنامه زمانی متفاوتی کار می‌کند که در آن روزهای استراحت غیر از شنبه و یکشنبه هستند، شما به راحتی می توانید با تعیین return_type متفاوت، فرمول WEEKDAY را مطابق با نیازهای خود تنظیم کنید.

    برای مثال، برای درمان Saturday و دوشنبه به عنوان آخر هفته، return_type را روی 12 تنظیم کنید، بنابراین نوع هفته "سه شنبه (1) تا دوشنبه (7)" را دریافت خواهید کرد:

    =IF(WEEKDAY(A2, 12)<6, "Workday", "Weekend")

    نحوه برجسته کردن روزهای کاری تعطیلات آخر هفته و در اکسل

    برای تشخیص تعطیلات آخر هفته و روزهای کاری در کاربرگ خود در یک نگاه، می توانید به طور خودکار آنها را در رنگ های مختلف سایه اندازی کنید. برای این کار، از فرمول روزهای هفته/آخر هفته که در مثال قبلی با آن بحث شد استفاده کنیدقالب بندی شرطی اکسل همانطور که شرط مشخص است، ما فقط به تابع هسته WEEKDAY بدون پوشش IF نیاز داریم.

    برای برجسته کردن تعطیلات آخر هفته (شنبه و یکشنبه):

    =WEEKDAY($A2, 2)<6

    برای برجسته کردن روزهای کاری (دوشنبه - جمعه):

    =WEEKDAY($A2, 2)>5

    جایی که A2 سلول سمت چپ بالای محدوده انتخاب شده است.

    به قانون قالب‌بندی شرطی را تنظیم کنید، مراحل به شرح زیر است:

    1. لیست تاریخ‌ها را انتخاب کنید (در مورد ما A2:A15).
    2. در برگه صفحه اصلی ، در گروه Styles ، روی قاعده‌بندی شرطی > قانون جدید کلیک کنید.
    3. در گفتگوی قانون قالب‌بندی جدید کادر، استفاده از فرمولی برای تعیین اینکه کدام سلول ها را قالب بندی کنید را انتخاب کنید.
    4. در کادر Format مقادیر که این فرمول true است، فرمول فوق را برای آخر هفته ها وارد کنید. یا روزهای هفته.
    5. دکمه Format را کلیک کرده و قالب مورد نظر را انتخاب کنید.
    6. دوبار OK را کلیک کنید تا تغییرات ذخیره شود و پنجره های گفتگو بسته شود.

    برای اطلاعات دقیق در مورد هر مرحله، لطفاً به نحوه تنظیم مراجعه کنید قالب بندی شرطی با فرمول.

    نتیجه بسیار زیبا به نظر می رسد، اینطور نیست؟

    نحوه شمارش روزهای هفته و آخر هفته در اکسل

    برای دریافت تعداد روزهای هفته یا آخر هفته در لیست تاریخ ها، می توانید از تابع WEEKDAY در ترکیب با SUM استفاده کنید. برای مثال:

    برای شمارش آخر هفته ، فرمول در D3 این است:

    =SUM(--(WEEKDAY(A3:A20, 2)>5))

    شمارش روزهای هفته ،فرمول در D4 به این شکل است:

    =SUM(--(WEEKDAY(A3:A20, 2)<6))

    در اکسل 365 و اکسل 2021 که آرایه‌ها را به صورت بومی مدیریت می‌کنند، این فرمول به عنوان یک فرمول معمولی کار می‌کند که در تصویر زیر نشان داده شده است. در اکسل 2019 و قبل از آن، Ctrl + Shift + Enter را فشار دهید تا به فرمول آرایه تبدیل شود.

    این فرمول ها چگونه کار می کنند:

    تابع WEEKDAY با return_type تنظیم شده بر روی 2 عدد روز را از 1 (دوشنبه) به 7 (یکشنبه) برمی گرداند. ) برای هر تاریخ در محدوده A3:A20. عبارت منطقی بررسی می کند که آیا اعداد برگشتی بزرگتر از 5 (برای تعطیلات آخر هفته) یا کمتر از 6 (برای روزهای هفته) هستند. نتیجه این عملیات آرایه ای از مقادیر TRUE و FALSE است.

    نفی مضاعف (--) مقادیر منطقی را به 1 و 0 وادار می کند. و تابع SUM آنها را جمع می کند. با توجه به اینکه 1 (TRUE) نشان دهنده روزهایی است که باید شمارش شوند و 0 (FALSE) روزهایی که باید نادیده گرفته شوند، نتیجه دلخواه را دریافت می کنید.

    نکته. برای محاسبه روزهای هفته بین دو تاریخ ، از تابع NETWORKDAYS یا NETWORKDAYS.INTL استفاده کنید.

    اگر روزهای هفته پس از آن، اگر شنبه یا یکشنبه پس از آن

    در نهایت، اجازه دهید کمی بیشتر بحث کنیم. مورد خاصی که نشان می دهد چگونه می توان روز هفته را تعیین کرد، و اگر شنبه یا یکشنبه است، کاری انجام دهید، اگر روز هفته است، کار دیگری انجام دهید.

    IF(WEEKDAY( cell , 2)> 5, if_weekday_then , if_weekday_then )

    فرض کنید در حال محاسبه پرداختی برای کارمندانی هستید که در روزهای مرخصی خود کارهای اضافی انجام داده اند، بنابراین نیاز داریدبرای اعمال نرخ های مختلف پرداخت برای روزهای کاری و آخر هفته. این را می توان با استفاده از دستور IF زیر انجام داد:

    • در آرگومان logical_test ، تابع WEEKDAY را در تودرتو قرار دهید که بررسی می کند آیا یک روز معین روز کاری یا آخر هفته است.
    • در آرگومان value_if_true ، تعداد ساعات کاری را در نرخ آخر هفته (G4) ضرب کنید.
    • در آرگومان value_if_false ، تعداد ساعات کاری را ضرب کنید. با نرخ روز کاری (G3).

    فرمول کامل در D3 به این شکل است:

    =IF(WEEKDAY(B3, 2)>5, C3*$G$4, C3*$G$3)

    برای اینکه فرمول به درستی در سلول های زیر کپی شود، مطمئن شوید که آدرس‌های سلول نرخ را با علامت $ قفل کنید (مانند $4 G$).

    عملکرد WEEKDAY کار نمی کند

    به طور کلی، دو خطای رایج وجود دارد که فرمول WEEKDAY ممکن است برگرداند:

    #VALUE! اگر یکی از موارد زیر باشد:

    • Serial_number یا return_type غیر عددی باشد.
    • Serial_number خارج از محدوده تاریخ های پشتیبانی شده (1900 تا 9999).

    #NUM! زمانی که return_type خارج از محدوده مجاز (1-3 یا 11-17) باشد، خطا رخ می دهد.

    این نحوه استفاده از تابع WEEKDAY در اکسل برای دستکاری روزهای هفته است. در مقاله بعدی، توابع اکسل را برای کار بر روی واحدهای زمانی بزرگتر مانند هفته، ماه و سال بررسی خواهیم کرد. لطفاً با ما همراه باشید و از خواندن شما متشکرم!

    کتاب کار را برای دانلود تمرین کنید

    فرمول WEEKDAY در اکسل - مثالها (xlsx.فایل)

    >

    مایکل براون یک علاقه‌مند به فناوری است که علاقه زیادی به ساده‌سازی فرآیندهای پیچیده با استفاده از ابزارهای نرم‌افزاری دارد. او با بیش از یک دهه تجربه در صنعت فناوری، مهارت های خود را در Microsoft Excel و Outlook و همچنین Google Sheets و Docs تقویت کرده است. وبلاگ مایکل اختصاص داده شده است تا دانش و تخصص خود را با دیگران به اشتراک بگذارد و نکات و آموزش هایی را برای بهبود بهره وری و کارایی ارائه دهد. چه یک حرفه ای با تجربه باشید و چه مبتدی، وبلاگ مایکل، بینش های ارزشمند و توصیه های عملی را برای استفاده حداکثری از این ابزارهای نرم افزاری ضروری ارائه می دهد.