كيف تتجاهل الحساب (ولا تُطبّق الصيغة) إذا كانت الخلية فارغة في إكسل؟
عند إدارة قائمة بسجلات الطلاب في إكسل—مثل تتبع أعياد ميلادهم وحساب أعمارهم—من الشائع مواجهة بيانات مفقودة. فعلى سبيل المثال، إذا لم تُقدَّم تواريخ ميلاد بعض الطلاب، فإن تطبيق صيغة العمر القياسية مباشرةً
=(TODAY()-B2)/365.25قد يؤدي كل صف يحتوي على خلية فارغة لعيد الميلاد إلى قيم غير متوقعة أو عديمة المعنى، مما قد يسبب الارتباك ويقلل دقة تحليلك.
لضمان دقة حساباتك وتجنب ظهور نتائج مضلِّلة، تحتاج إلى طريقة فعّالة لتجاهل أو تخطي حسابات الصيغ في الصفوف التي تكون فيها الخلية المطلوبة—مثل خلية عيد الميلاد—فارغة. ولا يكتفي هذا الأسلوب بتحسين مظهر ورقة العمل بصريًّا فحسب، بل يساعدك أيضًا على تجنُّب الأخطاء التي قد تؤثّر سلبًا في معالجة البيانات اللاحقة.
في هذه المقالة، نقدّم لك مجموعةً من الحلول العملية لمعالجة هذه المشكلة، بما في ذلك صيغ إكسل وأساليب مدمجة أخرى—اختر ما يناسب حالتك على أفضل وجه.
عدم الحساب (تجاهل الصيغة) إذا كانت الخلية فارغة في إكسل
ماكرو VBA – تطبيق الصيغ تلقائيًّا فقط على الصفوف التي تحتوي على عيد ميلاد غير فارغ
عدم الحساب أو تجاهل الصيغة إذا كانت الخلية فارغة في إكسل
إذا كنت بحاجة إلى تجاهل الحسابات ومنع الصيغ من إرجاع نتائج (أو أخطاء) عندما تكون خلية معينة — مثل خلية عيد الميلاد — فارغة، فإن دالةIF في إكسل توفّر حلاً مباشرًا ومرنًا. هذه الطريقة مثالية خصوصًا في جداول البيانات التي قد تكون بعض سجلاتها غير مكتملة، وترغب في تخطي الحسابات عند غياب البيانات.
الصيغة العامة هي:
=IF(Specific Cell<>«»,Original Formula,«»)
على سبيل المثال، لحساب العمر فقط عندما تكون خلية عيد الميلاد مملوءة، أدخل الصيغة التالية في الخلية C2:
=IF(B2<>"",(TODAY()-B2)/365.25,"") ثم اسحب مقبض التعبئة لأسفل لتغطية باقي الصفوف التي تريد حسابها. بهذه الطريقة، إذا كانت الخليةB2 (عيد الميلاد) فارغة، ستبقى النتيجة في نفس الصف فارغة بدلًا من عرض قيمة عمر مضللة.
نصائح:
- إذا كنت تفضل، يمكنك أيضًا استخدام=IF(ISBLANK(B2),«»,(TODAY()-B2)/365.25) — فكلتا الطريقتين تعطيان نتائج متشابهة.
- احرص على تنسيق بيانات خلايا أعياد الميلاد بدقة: فقد لا تعمل الصيغة كما هو متوقع إذا احتوت الخلايا على مسافات غير مرئية أو قيم غير تاريخية. يعامل إكسل الخلايا التي تحتوي على مسافات كخلايا غير فارغة، لذا تحقق يدويًّا من وجود هذه المشكلات إذا لاحظت نتائج غير متسقة.
شرح المعاملات:
- B2: الخلية التي تحتوي على تاريخ عيد الميلاد.
- TODAY(): تُرجع تاريخ النظام الحالي.
- 365.25: يُعدِّل حساب العمر وفقًا للسنة الكبيسة.
إذا احتوت الخلية B2 على تاريخ صالح، تُرجع الصيغة العمر المحسوب؛ أما إذا كانت فارغة، فتُرجع نتيجة فارغة أيضًا. ويُسهم هذا الأسلوب في الحفاظ على بيانات نظيفة وتجنب الأخطاء الناتجة عن معاملة الخلايا الفارغة كأنها أصفار أو قيم غير مناسبة.
يمكنك أيضًا صياغة الصيغة بهذه الطريقة:
=IF(B2="","",(TODAY()-B2)/365.25) تعمل هذه الصيغة بكفاءة مماثلة وتمنحك المرونة في التعامل مع الخلايا الفارغة، وفقًا لتفضيلاتك أو تنسيق بياناتك.
إدخال شرطة، نص معين، أو NA بسرعة في جميع الخلايا الفارغة ضمن التحديد في إكسل
أداة Kutools لـ Excel ملء الخلايا الفارغةتساعدك على إدخال نص معين، مثل «تحذير»، في جميع الخلايا الفارغة ضمن النطاق المحدد بنقرات قليلة فقط في إكسل!

ماكرو VBA – تطبيق الصيغ تلقائيًّا فقط على الصفوف التي تحتوي على عيد ميلاد غير فارغ
للمشاهدات التي ترغب في أتمتة العملية والتأكد من تطبيق الصيغة حصريًّا على الصفوف التي تحتوي على خلية عيد ميلاد غير فارغة، يُعد ماكرو VBA حلاً موثوقًا وقابلًا للتوسّع. فهو مثالي لمجموعات البيانات الكبيرة أو للمستخدمين الراغبين في تسهيل المهام المتكررة، كما يقلل بشكل فعّال من الأخطاء اليدوية الناتجة عن تطبيق الصيغ عن طريق الخطأ على صفوف فارغة.
السيناريو المناسب:عندما تكون مجموعة بياناتك كبيرة أو يتم تحديثها بشكل متكرر، ويصبح تطبيق الصيغ يدويًّا أمرًا مرهقًا أو عرضة للخطأ، فإن استخدام ماكرو VBA يضمن إدخال الصيغ فقط في الصفوف المناسبة التي تحتوي على بيانات.
خطوات التنفيذ:
- في شريط Excel، انقر فوقالمطوِّر (Developer) > Visual Basic. في نافذةMicrosoft Visual Basic for Applications التي تظهر، انقر فوقإدراج (Insert) > وحدة برمجية (Module)لفتح نافذة وحدة برمجية فارغة.
- الصق الكود أدناه في الوحدة البرمجية:
Sub ApplyAgeFormulaIfNotBlank()
Dim ws As Worksheet
Dim lastRow As Long
Dim i As Long
Set ws = ActiveSheet
lastRow = ws.Cells(ws.Rows.Count, "B").End(xlUp).Row
On Error Resume Next
xTitleId = "KutoolsforExcel"
For i = 2 To lastRow
If ws.Cells(i, "B").Value <> "" Then
ws.Cells(i, "C").Formula = "=IF(B" & i & "<>"""",(TODAY()-B" & i & ")/365.25,"""")"
Else
ws.Cells(i, "C").Value = ""
End If
Next i
End Sub - بعد إدخال الكود، أغلق محرر VBA. عُد إلى ورقة العمل وشغّل الماكرو: اضغط على مفتاحF5، أو انقر فوقتشغيل (Run). سيقوم الماكرو تلقائيًّا بتطبيق صيغة العمر على العمود C فقط في الصفوف التي يحتوي فيها العمود B على تاريخ ميلاد. أما الصفوف التي يكون العمود B فارغًا فيها، فسيبقى العمود C فارغًا.
نصائح واستكشاف الأخطاء وإصلاحها:إذا لم تظهر لك علامة التبويب «المطوِّر»، فقم بتفعيلها من خيارات إكسل. وللحفاظ على الكود، احفظ ملف عملك كملف يدعم الماكرو (.xlsm). وإذا أردت تعديل مواقع الأعمدة حسب احتياجاتك، غيّر القيم «B» و«C» في الماكرو وفقًا لذلك.
اقتراح موجز:الماكروات الآلية مفيدة جدًّا في سير العمل المتكرر، إذ تقلل من خطر تطبيق الصيغ بشكل غير متسق عند إدارة جداول كبيرة أو التي يتم تحديثها بشكل متكرر.
ملاحظة: ينطبق هذا الكود المكتوب بلغة VBA عندما تبدأ البيانات من الصف الثاني. إذا أردت تعديله ليبدأ من الصف الأول، فغيّر القيمة من i=2 إلى i=1 في الكود.
عرض توضيحي: عدم الحساب (تجاهل الصيغة) إذا كانت الخلية فارغة في إكسل
مقالات ذات صلة
كيف تمنع الحفظ في إكسل إذا كانت خلية معيّنة فارغة؟
كيف تُبرز الصف تلقائيًا إذا احتوت إحدى خلاياه على نص، أو قيمة، أو كانت فارغة في إكسل؟
كيف تستخدم دالة IF مع الدوال AND وOR وNOT في إكسل؟
كيف يمكنك عرض رسائل تحذير أو تنبيه عند ترك الخلايا فارغة في إكسل؟
كيف تُدخل أو تعرض نصًّا أو رسالةً عند فراغ الخلايا في إكسل؟
كيف يمكن حذف الصفوف التي تحتوي على خلايا فارغة في قائمة طويلة في إكسل؟
أفضل أدوات الإنتاجية لمكتبتك
عزِّز مهاراتك في 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 يومًا بكامل الميزات— بدون تسجيل، بدون بطاقة ائتمان
- أفضل قيمة— وفِّر مقارنةً بشراء الإضافات بشكل منفصل