
محاسبات مربوط به زمان (جمع ساعت در اکسل)
تاریخ و زمان در اکسل یکی از مباحثی است که خیلی مورد سوال قرار میگیره به عنوان مثال جمع ساعت در اکسل . مثلا یک برنامه برای ثبت ساعت ورود و خروج افراد تنظیم کردیم و میخواهیم از طریق اون محاسبات مربوط به حقوق، اضافه کاری، کسری کار و ….. محاسبه کنیم. پس باید بدونیم زمان در اکسل چه مفهومی داره و محاسباتش به چه صورته.
در این آموزش هر نکته ای راجع به زمان وجود داره رو با هم مرور خواهیم کرد.
مطابق شکل ۱ در دو سلول، زمان یکسان رو وارد کنید. فرمت یک سلول رو به Number تغییر بدید. این عدد به چه معنی است؟

شکل ۱- مفهوم مقدار زمان
همونطور که در شکل ۱ میبینید، ۱۲:۵۳ بعد از ظهر، معادل ۰.۵۴ روز هست. بعبارتی ۲۴ ساعت کامل در اکسل معادل عدد ۱ هست. در واقع محاسبات ساعت در اکسل، نسبت به روز سنجیده میشه. پس اگر میخوایم محاسباتی که داریم انجام میدیم، بر اساس ساعت باشه، مثلا میخوایم ساعت اضافه کاری رو در مبلغ هر ساعت ضرب کنیم. باید حواسمون باشه که اکسل اون جمع ساعت رو به روز تبدیل میکنه و بعد در مبلغ هر ساعت ضرب میکنه. به نکات زیر دقت کنید:
همونطور که در شکل ۲ می بینید، حاصل جمع چند ساعت اضافه کاری بدرستی نمایش داده نمیشه. با یک حساب سرانگشتی می بینیم که مجموع ساعت ها بیش از ۵۰ ساعت هست. برای اینکه نمایش جمع رو اصلاح کنیم، بر روی سلول B8 کلیک راست کرده و در Format Cell/ Custom کد زیر رو وارد میکنیم:
[hh]:mm
در واقع فرمت زمان هر چی که بود با ثانیه/بدون ثانیه یا مثلا AM/PM …. در هر صورت ساعت یا همون h رو داخل براکت [ ] قرار میدیم.

شکل ۲- محاسبات زمانی
حالا فرض کنید هر ساعت اضافه کاری معادل ۱۰۰۰۰ ریال هست، برای اینکه ببینیم در نهایت مبلغ ناشی از اضافه کاری چقدر خواهد بود، مجموع بدست آمده رو در مبلغ ضرب میکنیم.
همونطور که در شکل ۳ مشاهده می کنید در مرحله اول، حاصل ضرب مجموع ساعات در ۱۰۰۰۰ به فرمت ساعت هست، در حالیکه ما مبلغ را به فرمت عدد نیاز داریم. پس فرمت آن را به Number تغییر میدهیم. اما می بینیم که پس از تغییر فرمت به Number، میزان حاصلضرب درست نیست. علت همون مسئله ای سهت که در بالا به آن اشاره شد. اکسل مجموع ساعت را به روز تبدیل کرده (یعنی ۶۱:۰۵ رو تقسیم بر 24ساعت کرده) و حاصل را در ۱۰۰۰۰ ضرب میکند. پس اگر بخواهیم خود ساعت در ۱۰۰۰۰ ضرب بشه، باید حاصل را در ۲۴ ضرب کنیم.

شکل ۳- محاسبات زمان و ساعت
حالا که جنس زمان و منطق محاسبه اکسل رو فهمیدیم، به راحتی میتونیم هر نوع محاسباتی (جمع ساعت در اکسل) رو روی زمان های مختلف انجام بدیم، جمع، تفریق، ضرب و ….
در ادامه چند تابع کاربردی در خصوص زمان معرفی میکنم که در محاسبات مفید خواهد بود:
| ورودی تابع | تابع | خروجی | شرح |
| 9:56:10 PM | HOUR(B5) | 21 | این تابع ساعت را فراخوانی میکنه |
| 9:56:10 PM | MINUTE(B6) | 56 | این تابع دقیقه را فراخوانی میکنه |
| 9:56:10 PM | SECOND(B7) | 10 | این تابع ثانیه را فراخوانی میکنه |
| ۲۱ ساعت | ۵۶ دقیقه | ۱۰ ثانیه | TIME(D8,C8,B8) | 9:56:10 PM | این تابع زمان حاصل از ساعت، دقیقه و ثانیه ورودی رو نمایش میده |
مثلا زمانی که میخوایم دو ساعت رو از هم کم کنیم، از یکی از حالت های نشان داده شده در شکل ۴ استفاده میکنیم:

شکل ۴- محاسبه اختلاف زمان
در این مطلب در مورد جمع یا کسر ساعت صحبت کردیم. موضوعات زیر رو هم بهتون پیشنهاد میکنم بخونید:





سلام یک ستون حاوی نام افراد و یک ستون حاوی تایم های مختلف دارم چطور میتونم از ستون تایم بیشترین زمان و کمترین زمان هر فرد رو محاسبه کنم؟
سلام
برای انجام این کار بهترین راه استفاده از Pivot Table هست.
هر چند با استفاده از توابع MinIF و MaxIF هم میتونید این کار رو انجام بدید (در نسخه ۲۰۱۹)
از توابع DMin و DMax هم برای این کار میتونید استفاده کنید (برای نسخه های زیر ۲۰۱۶ که MaxIF و MinIF ندارند)
سلام عدد ۱۷۵۰ را میخواهیم تبدیل به ساعت و دقیقه کنم بیشتر از ۲۴ ساعت نشان نمیدهد
درود
فرمت ساعت سلول رو در براکت بذارید [h]
سلام من بااستفاده از تابع درج خودکار ساعت ساعتی را درج میکنم و میخوام که با یک ساعت دیگه تفریق کنم جواب درستی نمیده؟
درود بر شما
نحوه تفریق کردن رو در همین مقاله نوشته شده به دقت مطالعه کنید
با سلام
بنده میخام زمانی که رو سیستم هستشش تو فایل اکسلم درج بشه برای همین اومدم از کد با استفاده کردم از view code اما وقتی فایل اکسل رو میبندم و دوباره وارد میشم چیزی در view code نیس چرا؟
درود
فایل حاوی کد باید بصورت Macro enable ذخیره بشه
و الا کدها میپره
وقتتون بخیر
چطور میتونم ساعت ۱۲ ساعته رو که am , pm کنارش داره به فرمت ۲۴ ساعته تبدیل کنم؟
ممنون میشم راهنمایی کنید
درود
از قسمت فرمت سل نحوه نمایش رو تنظیم کنید
اینجا فرمت رو تغییر میدم هیچ تغییری نمیکنه، من داده ساعتم رو از تاریخ جدا کردم درواقع ی ستون بودن با =Right () جدا کردم ممکنه بخاطر این باشه؟
بله خروجی توابع متنی متنه و خاصیت عددی نداره. از تابع value هم استفاده کنید
یک سوالی داشتم اینکه چطور می تونیم زمان های مربوط به یک شخص رو مقایسه کنیم که تداخل نداشته باشن. من در دانشگاه کار می کنم می خواهم کل زمان هایی که یک دانشجو انتخاب واحد کرده رو چک کنم که تداخل نداشته باشه. داده ام به این شکل هست که هر دانشجو شماره دانشجویی اش به تعداد دروس تکرار می شه در ردیف جدید و ساعت شروع و پایان کلاس در ستون بغلی نوشته شده . اما مثلا چطور میتونم تداخل دو زمان ۸:۰۰ تا ۹:۴۰ و ۹:۱۵ تا ۱۰:۰۰ رو پیدا کنم که دقیقا در چه زمانی این تداخل وجود داره ؟ یعنی جواب باید این باشه : ۹:۱۵ تا ۹:۴۰
ممنون می شم اگه راهنمایی م کنین
درود
این ساعت ها، برای یک روز هستن یا روز هم در محاسبات دخیل هست؟
ساعت ابتدا و انتها در یک سلول هست یا جدا هستن؟
این ساعت ها در روزهای مختلف هستند درواقع انتخاب واحد دانشجو هستند که هر دانشجو در روزهای متفاوت درس های متفاوت دارد و در واقع ما می خواهیم بدونیم با هر تغییر زمانبندی یک کلاس ، چه تعداد دانشجو دچار تداخل کلاسی می شوند . زمان ابتدا و انتها رو می تونم جدا کنم ، بله جدا در نظر بگیریم. فقط در بعضی موارد یک درس شامل ۲ زمان در ۲ روز هستش که هردو شامل شروع و پایان هستند .
در لیست اکسل ما ۹۸ هزارتا ردیف وجود داره که مثلا برای دانشجوی اول ۵ تا ردیف که ستون اول همه ی این ردیف ها شماره دانشجویی مشترک هست و مابقی ستون های این ۵ ردیف متفاوت و شامل دروس مختلف و روبروی هرکدوم زمان شروع و پایان متفاوت و برای دانشجوی دوم ممکنه ۱۳ تا درس مختلف وجود داشته باشه که اون هم در روزهای مختلف و شروع و پایان متفاوت هستش.
جزئیات زیاده و باید روش وقت گذاشته بشه و ساختار فایل مشخص بشه. که در اینجا نمیگنجه.
سلام وقت بخیر.من میخوام ببینم چجوری میشه رو اکسل یه تعداد روزی رو به تاریخ اضافه کرد.مثلا بگیم به تاریخ ۱۸/۰۱/۱۳۹۹ ، رو ۷ روز اضافه کن.
ممنونم
درود
بستگی به نوع تاریخ شمسی داره. اول این مقاله رو مطالعه کنید
https://excelpedia.net/excel-jalali-date/
من با روش چهارم تاریخ رو وارد کردم.
خب پس کافیه تاریخ رو باضافه عدد ۷ کنید
انگار که دارید محاسبات ریاضی انجام میدید
مقاله زیر هم توضیح بیشتر ارائه شده:
https://excelpedia.net/excel-date-function/
منم در ابتدا همین کارو کردم ولی #Value! میده
فرمت ممکنه ظاهر تاریخ داشته باشه اما تکست باشه!
اگه اینطور باشه خطا میگیرید
سلام
چطور میشه زمانیکه ۲تاریخ و ۲ساعت داریم مدت زمانش را حساب کنیم
مثلا ساعت و تاریخ امروز را از ساعت و تاریخ فردا کم کنیم و اگر هم در همان روز بود اختلاف زمانش را حساب کنه؟
درود بر شما
طبق همین اموزش باید عمل کنید
و بسته به اینکه تاریخ شمسی است یا میلادی متفاوت
در نهایت وقتی کم کردید اگر کمتر از ۱ بود یعنی در همون شبانه روز هست!
سلام
من یه لیست ورود و خروج تهیه کردم و در ستون نهایی اون به مشکلی که برخوردم اینه که:
باید (کل ساعات روز منهای یکساعت نهار- کسر کار روز + اضافه کار ) بشه که به روشهای مختلف امتحان کردم ولی یا خطای فرمول میده یا جواب داده شده صحیح نیست. اگر امکان دارد لطفا راهنمایی بفرمایید.
با تشکر
درود بر شما
راهنمایی که میتونیم بکنیم همین آموزشی هست که ارائه شده
باید خوب مفهوم زمان رو درک کنید که بتونید محاسبات انجام بدید، بقیش چهار عمل اصلی هست
در نهایت فرمولی که نوشتید رو بذارید تا بررسی بشه
سلام، ممنون از آموزش مفیدتون
یه سوالی دارم و اینه که دستگاه حضور غیاب کارگاه ما ساعتهای ورود و خروج را به صورت فایل اکسل میده ولی مشکلم اینه که ساعت ورود و خروج؛ هر دو در یک سلول قرار گرفتن (با یک فاصله: ۰۸:۵۴ ۱۲:۵۸) چطوری میتونم تفاضلشون رو محاسبه کنم، مطلبی که شما گفتین برای دو سلول جداگانه جواب میده، ممنون میشم کمکم کنین
سلام
میتونید با استفاده از ابزار Text To Column این دو ساعت رو از هم جدا کنید و در سلول های جداگانه قرار بدید و نهایتا مدت زمان بین دو ساعت رو محاسبه کنید.