ایجاد سوال
dark_mode
0 دوستدار 0 امتیاز منفی
27 visibility
موضوع: آفیس توسط:

اگر از اکسل برای ردیابی اطلاعات پروژه ها استفاده می کنید، ممکن است بخواهید مدت زمان یک پروژه معین را بر حسب سال، ماه و روز بدانید. اگر تاریخ شروع و پایان هر پروژه را دارید، می توانید از تابع کاربرگ DATEDIF برای بازگرداندن اطلاعات به روش دلخواه استفاده کنید.

به عنوان مثال، فرض کنید که شما یک تاریخ شروع در سلول E7 و تاریخ پایان در سلول F7 دارید. با استفاده بسیار ساده از DATEDIF می توانید تفاوت بین این دو تاریخ را محاسبه کنید:

=DATEDIF(E7,F7,"d")

این تابع تعداد روزهای بین دو تاریخ را برمی گرداند، مشروط بر اینکه تاریخ در E7 کمتر یا مساوی با تاریخ F7 باشد. آرگومان سوم، "d" باعث می شود که DATEDIF نتیجه خود را در چند روز برگرداند. همچنین می توانید ماه ها ("m") و سال ها (y") را مشخص کنید. اما برای اهداف این مثال، چندین استدلال دیگر وجود دارد که بسیار مفید هستند: ماه ها به استثنای سال ها ("ym")، روزها به استثنای سال ها (" yd")، و روزها به استثنای ماه ها و سال ها ("md").

با استفاده از این استدلال‌های مختلف، می‌توانید فرمولی بسازید که پاسخی را ارائه دهد که روزهای سپری شده را به صورت سال، ماه و روز نشان می‌دهد. (به دلیل طولانی بودن فرمول های این نکته، آنها را به خطوط جداگانه تقسیم کردم تا خوانایی آنها کمی آسان تر شود. با این حال، این یک فرمول واحد است و باید در اکسل وارد شود.)

=DATEDIF(E7,F7,"y") & " years, " & DATEDIF(E7,F7,"ym")
& " months, " & DATEDIF(E7,F7,"md") & " days "

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

=IF(DATEDIF(E7,F7,"y")=1,DATEDIF(E7,F7,"y")&" year, ",
DATEDIF(E7,F7,"y")&" years, ")&IF(DATEDIF(E7,F7,"ym")=1,
DATEDIF(E7,F7,"ym") &" month, ",DATEDIF(E7,F7,"ym")
&" months, ")&IF(DATEDIF(E7,F7,"md")=1,DATEDIF(E7,F7,"md")
&" day",DATEDIF(E7,F7,"md")&" days")

این در همه موارد کار می کند به جز زمانی که سال، ماه یا روز صفر باشد. برای خلاص شدن از شر واحد مناسب زمانی که صفر است به فرمول طولانی‌تری نیاز است:

=IF(DATEDIF(E7,F7,"y")=0,"",IF(DATEDIF(E7,F7,"y")=1,
DATEDIF(E7,F7,"y")&" year, ",DATEDIF(E7,F7,"y")&" years, "))
&IF(DATEDIF(E7,F7,"ym")=0,"",IF(DATEDIF(E7,F7,"ym")=1,
DATEDIF(E7,F7,"ym")&" month, ",DATEDIF(E7,F7,"ym")&" months, "))
&IF(DATEDIF(E7,F7,"md")=0,"",IF(DATEDIF(E7,F7,"md")=0,
DATEDIF(E7,F7,"md")&" day ",DATEDIF(E7,F7,"md")&" days"))

این فرمول بسیار طولانی می شود، اما تنها واحدهایی را برمی گرداند که مقداری برای آنها وجود دارد. بنابراین، به جای بازگشت "0 سال، 2 ماه، 1 روز"، "2 ماه، 1 روز" باز خواهد گشت.

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

=IF(DATEDIF(E7,F7,"y")=0,"",IF(DATEDIF(E7,F7,"y")=1,
DATEDIF(E7,F7,"y")&"year",DATEDIF(E7,F7,"y")&"years"))
&IF(AND(DATEDIF(E7,F7,"y")<>0,DATEDIF(E7,F7,"ym")<>0),", ","")
&IF(DATEDIF(E7,F7,"ym")=0,"",IF(DATEDIF(E7,F7,"ym")=1,
DATEDIF(E7,F7,"ym")&" month",DATEDIF(E7,F7,"ym")&" months"))
&IF(AND(OR(DATEDIF(E7,F7,"y")<>0,DATEDIF(E7,F7,"ym")<>0),
DATEDIF(E7,F7,"md")<>0),", ","")&IF(DATEDIF(E7,F7,"md")=0,"",
IF(DATEDIF(E7,F7,"md")=1,DATEDIF(E7,F7,"md")&" day",
DATEDIF(E7,F7,"md")&" days"))
اگر خواستی، با این لینک از ما حمایت کن

پاسخ شما

looks_5نام شما برای نمایش - اختیاری
حریم شخصی : آدرس ایمیل شما محفوظ میماند و برای استفاده های تجاری و تبلیغاتی به کار نمی رود
عدد چهار رقمی در تصویر را وارد کنید

برای جلوگیری از این تایید در آینده, لطفا وارد شده یا ثبت نام کنید.
اگر حساب گوگل دارید به راحتی وارید شوید

0 پاسخ وجود دارد

سوالات مشابه

برای دسترسی راحت به مطالب سایت ، اپلیکیشن سایت را نصب کنید
و لطفا بعد از نصب امتیاز دهید. با تشکر از حمایت شما
0 دوستدار 0 امتیاز منفی
0 پاسخ 26 visibility
ارسال شده در 26 تیر 1402 موضوع: آفیس توسط: Admin
0 دوستدار 0 امتیاز منفی
0 پاسخ 34 visibility
0 دوستدار 0 امتیاز منفی
0 پاسخ 25 visibility
ارسال شده در 26 تیر 1402 موضوع: آفیس توسط: Admin
0 دوستدار 0 امتیاز منفی
0 پاسخ 34 visibility
0 دوستدار 0 امتیاز منفی
0 پاسخ 25 visibility
ارسال شده در 25 تیر 1402 موضوع: آفیس توسط: Admin

24.3k سوال

9.6k پاسخ

614 دیدگاه

11.2k کاربر

135 نفر آنلاین
0 عضو و 135 مهمان در سایت حاضرند
بازدید امروز: 686
بازدید دیروز: 25180
بازدید کل: 20338044
...