كيف تحسب الساعات بين الأوقات التي تمتد بعد منتصف الليل في Excel؟
لنفرض أنك تدير جدول عمل في Excel وتحتاج إلى تتبع فترات عمل الموظفين التي تبدأ متأخرة في يومٍ ما وتنتهي بعد منتصف الليل في اليوم التالي. على سبيل المثال، يُسجّل العمود A أوقات البدء في اليوم الحالي، بينما يُسجّل العمود B أوقات الانتهاء بعد منتصف الليل في اليوم التالي. عند استخدام صيغة طرح بسيطة مثل «=B2-A2»، يعرض Excel نتيجة غير صحيحة أو سالبة، كما هو موضح في لقطة الشاشة أدناه. ويرجع ذلك إلى أن حسابات الوقت في Excel تُعاد ضبطها عند منتصف الليل، مما يؤدي إلى أخطاء عند طرح فترات زمنية تمتد عبر منتصف الليل. فكيف يمكنك حساب إجمالي ساعات العمل بين وقتين بدقة عندما يكون وقت الانتهاء بعد منتصف الليل في Excel؟
احسب الساعات بين وقتين بعد منتصف الليل باستخدام صيغة
احسب الساعات بين الأوقات بعد منتصف الليل باستخدام كود VBA (أتمتة متقدمة)
احسب الساعات بين وقتين بعد منتصف الليل باستخدام صيغة
للحصول على حساب دقيق للساعات بين وقتين عندما يكون وقت الانتهاء بعد منتصف الليل، يمكنك استخدام صيغة بسيطة تأخذ في الاعتبار الفروق الزمنية التي تمتد عبر يومين. يُعد هذا الأسلوب فعّالًا للمجموعات الصغيرة إلى المتوسطة الحجم من البيانات أو عندما يقتصر منطقك على التعامل مع الفجوات الزمنية التي تعبر منتصف الليل.
كيف يعمل:تتحقّق الصيغة «=(B2-A2+(B2<A2))*24» مما إذا كان وقت الانتهاء (B2) أبكر من وقت البدء (A2). وإذا كان كذلك، تضيف يومًا واحدًا (لأن Excel يخزّن الوقت ككسور من يوم مدته 24 ساعة)، لضمان الحصول دائمًا على نتيجة إيجابية للساعات.
1. أدخل الصيغة التالية في خلية فارغة بجانب بياناتك الزمنية (مثلًا، في الخلية C2):
=(B2-A2+(B2<A2))*24 الشرح:هنا، تحتويA2 على وقت البدء، وتحتويB2 على وقت الانتهاء (بعد منتصف الليل). عدّل مراجع الخلايا حسب الحاجة بناءً على تخطيط بياناتك.

2. بعد إدخال الصيغة، اضغط Enter، ثم استخدم مقبض التعبئة لسحبها إلى الأسفل عبر الصفوف ذات الصلة. وسيقوم Excel فورًا بحساب الفروق الزمنية مع أخذ عبور منتصف الليل في الاعتبار.

نصائح:
- تأكد من أن جميع خلايا الوقت منسَّقة كـوقت (انقر بزر الماوس الأيمن > تعيين تنسيق الخلية > وقت).
- يُخرِج هذا الصيغة الساعات كرقم عشري. وللحصول على نتيجة بالساعات والدقائق، يمكنك استخدام تنسيق
TEXT، مثلاً:=TEXT(B2-A2+(B2<A2),"h:mm"). ومع ذلك، تظل الصيغة الأصلية الخيار الأفضل عند الحاجة إلى إجراء عمليات حسابية على الساعات العشرية لأغراض كشوف المرتبات أو إعداد التقارير. - إذا تضمّنت بياناتك إدخالات وقت غير صالحة، فتحقق من وجود أخطاء إملائية أو قيم لا يتعرّفها Excel كأوقات.
الأخطاء الشائعة:
- إذا ظهر لك خطأ#VALUE!، فتأكد من أن العمودين يحتويان على قيم وقت صالحة وليس نصوصًا.
- تشير النتائج السلبية أو غير المتوقعة عادةً إلى أن مراجع الصيغة غير مُحاذاة، أو أن الوقت لم يُدخل بالشكل الصحيح.
الملخص:يُعد هذا الحل مثاليًا للجداول النموذجية للورديات أو لتتبُّع الوقت البسيط خلال الليل، خاصةً عندما تكون بياناتك في تنسيق بسيط من عمودين ولا تحتاج إلى منطق عمل معقد.
احسب الساعات بين الأوقات بعد منتصف الليل باستخدام كود VBA (أتمتة متقدمة)
إذا كنت بحاجة إلى معالجة كميات كبيرة من بيانات سجلات الوقت، أو رغبت في أتمتة حساب الساعات لسيناريوهات معقدة—مثل تطبيق تقريب مخصص، أو التعامل مع استثناءات، أو فترات راحة متغيرة—فإن استخدام ماكرو VBA يمكن أن يوفّر وقتك ويقلل الأخطاء اليدوية. ويُعدّ هذا الأسلوب مثاليًا للمستخدمين المتقدمين أو لأولئك الذين يتعاملون مع أنماط ورديات متغيرة، أو نقاط قطع غير معتادة، أو احتياجات معالجة دفعية.
السيناريوهات المناسبة:اختر هذا الحل إذا كنت:
- معالجة مئات أو آلاف الصفوف بانتظام
- تحتاج إلى منطق يتجاوز الحالة الأساسية لعبور منتصف الليل (مثل قواعد العمل الإضافي المتغيرة، أو خصومات فترات الغداء)
- تفضيل حل يُعيد الحساب تلقائيًا بأقل قدر ممكن من الإدخال اليدوي
العيوب:يجب أن يشعر المستخدمون بالراحة عند تمكين ماكروات VBA، وقد يحتاج مستلمو المصنف أيضًا إلى السماح بتشغيلها أو تعديل إعدادات أمان الماكرو.
1. افتح مصنف Excel، ثم اضغطAlt + F11 لتشغيل محررVisual Basic for Applications (VBA). في واجهة VBA، انقرإدراج > وحدة نمطيةلإنشاء وحدة جديدة، ثم الصق الكود أدناه في نافذة الكود:
Sub CalculateHoursAcrossMidnight()
Dim rng As Range
Dim cell As Range
Dim startTime As Date
Dim endTime As Date
Dim resultCol As Integer
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set rng = Application.Selection
Set rng = Application.InputBox("Select the range containing start and end times (two columns)", xTitleId, rng.Address, Type:=8)
If rng Is Nothing Then Exit Sub
resultCol = rng.Columns(rng.Columns.Count).Column + 1
For Each cell In rng.Columns(1).Cells
startTime = cell.Value
endTime = cell.Offset(0, 1).Value
If IsDate(startTime) And IsDate(endTime) Then
If endTime < startTime Then
cell.Offset(0, 2).Value = (endTime - startTime + 1) * 24
Else
cell.Offset(0, 2).Value = (endTime - startTime) * 24
End If
Else
cell.Offset(0, 2).Value = "Invalid Time"
End If
Next cell
MsgBox "Calculation complete! Hours between times after midnight are now in the next column.", vbInformation, xTitleId
End Sub 2. لتنفيذ الماكرو، أغلق محرر VBA وارجع إلى Excel. حدد النطاق في ورقة العمل الذي يحتوي على عمودَي وقت البدء والانتهاء معًا، ثم اضغطمفتاح F5أو انقرزر التشغيل.
سيطلب منك الماكرو تحديد نطاق يحتوي على أوقات البدء والانتهاء (الموجودة جنبًا إلى جنب). وستُعرض النتائج—وهي عدد الساعات بين الأوقات مع التعديل لمراعاة عبور منتصف الليل—في العمود الموجود مباشرةً على يمين نطاق البيانات.
نصائح واستكشاف الأخطاء وإصلاحها:
- يجب أن يحتوي عمودا وقت البدء ووقت الانتهاء على قيم تاريخ/وقت صالحة؛ وإلا فسيتم وضع علامة على الخلايا ذات التنسيقات غير المعترف بها كـ«وقت غير صالح».
- لإعادة استخدام الماكرو أو تعديله لأوراق أخرى، غيّر التحديد أو عدّل إزاحات الأعمدة بما يناسب احتياجاتك.
- إذا لم يظهر الماكرو أو لم يكن قابلاً للتنفيذ، فتأكد من تمكين الماكروات عبر تعديل إعدادات الأمان في Excel (ملف > خيارات > مركز الثقة > إعدادات الماكرو).
- يمكن تكييف هذا الأسلوب للتعامل مع قواعد عمل مخصصة، حيث يمكنك إدراج منطق VBA إضافي لمراعاة فترات الراحة أو تقريب الوقت أو حسابات العمل الإضافي حسب الحاجة.
الملخص:يُعد أسلوب VBA الآلي مثاليًا خصوصًا للمستخدمين الذين يديرون قوائم ضخمة، أو يحتاجون إلى إجراء عمليات حسابية متكررة، أو يطبّقون منطقًا مؤسسيًا مخصصًا لإدارة الوقت. وبمجرد إعداده، يلغي الحاجة إلى المهام اليدوية المتكررة ويقلل بشكل كبير من احتمالية الوقوع في أخطاء حسابية خلال الورديات الليلية.

افتح سحر إكسل مع KUTOOLS AI
- التنفيذ الذكي: نفِّذ عمليات الخلايا، وحلِّل البيانات، وأنشئ المخططات البيانية — كل ذلك بأوامر بسيطة!
- الصيغ المخصصة: أنشئ صيغًا مخصصة لتبسيط سير عملك.
- برمجة VBA: اكتب وأَنفِذ أكواد VBA بسلاسة تامة.
- تفسير الصيغ: افهم الصيغ المعقدة بسهولة!
- ترجمة النصوص: اكسر الحواجز اللغوية في جداولك الإلكترونية!
أفضل أدوات الإنتاجية لمكتبتك
عزِّز مهاراتك في Excel باستخدام Kutools لـ Excel، وعايش الكفاءة كما لم تفعل من قبل.يقدّم Kutools لـ Excel أكثر من 300 ميزة متقدمة لتعزيز الإنتاجية ووقت الحفظ.انقر هنا للحصول على الميزة التي تحتاجها أكثر من غيرها...
يجلب Office Tab واجهة ذات علامات تبويب إلى Office، ويجعل عملك أسهل بكثير
- تمكّن من التحرير والقراءة باستخدام علامات التبويب في Word وExcel وPowerPoint، وPublisher وAccess وVisio وProject.
- افتح وأنشئ مستندات متعددة في علامات تبويب جديدة داخل النافذة نفسها، بدلاً من فتح نوافذ جديدة.
- يزيد إنتاجيتك بنسبة 50% ويوفّر لك مئات نقرات الفأرة كل يوم!
جميع الإضافات من Kutools في برنامج تثبيت واحد!
Kutools for Office حزمةٌ تحتوي على إضافاتٍ مخصصة لتطبيقات Excel وWord وOutlook وPowerPoint، إلى جانب Office Tab Pro، مما يجعلها الخيار المثالي للفِرق التي تعمل عبر تطبيقات Office.
- حزمة شاملة واحدة— إضافات Excel وWord وOutlook وPowerPoint بالإضافة إلى Office Tab Pro
- برنامج تثبيت واحد، ترخيص واحد— الإعداد خلال دقائق (جاهز لـ MSI)
- يعمل بشكل أفضل معًا— إنتاجية ميسَّرة عبر تطبيقات Office
- تجربة مجانية لمدة 30 يومًا بكامل الميزات— بدون تسجيل، بدون بطاقة ائتمان
- أفضل قيمة— وفِّر مقارنةً بشراء الإضافات بشكل منفصل