كيف يمكن التخلص من أخطاء القسمة على صفر (#DIV/0!) في Excel؟

عند تحليل البيانات في Excel، قد تواجه غالبًا خطأً من نوع#DIV/0!، خاصةً في العمليات الحسابية التي تتضمن القسمة. يظهر هذا الخطأ عادةً عندما تحاول صيغة قسمة رقم على صفر أو على خلية فارغة، وهو ما يعتبره Excel عملية غير صالحة. على سبيل المثال، في ورقة عمل لتحليل المبيعات، إذا كنت بحاجة إلى حساب متوسط السعر لكل فاكهة باستخدام صيغة مثل=D2/(C2-B2)، كما هو موضح في الرسم التوضيحي، فستُعيد الصيغة خطأً من نوع#DIV/0! كلما كانت القيمة في Q2 (الكمية النهائية) تساوي القيمة في Q1 (الكمية الابتدائية). يمكن أن تؤدي هذه الأخطاء إلى ازدحام تقاريرك، مما يجعل تفسير البيانات أكثر صعوبة أو يتسبب في مشكلات في العمليات الحسابية اللاحقة. هناك طرق مختلفة لتجنب هذه رسائل الخطأ أو إزالتها أو إدارتها، وذلك حسب احتياجاتك الخاصة وما إذا كان بإمكانك تعديل الصيغ مباشرةً أو تفضل حلولًا سريعة للإصلاح.
- منع أخطاء القسمة على صفر (#DIV/0!) من خلال تعديل الصيغ
- إزالة أخطاء القسمة على صفر (#DIV/0!) باختيار جميع الأخطاء وحذفها
- إزالة أخطاء القسمة على صفر (#DIV/0!) باستبدال الأخطاء بخلايا فارغة
- VBA: مسح تلقائي لأخطاء #DIV/0! واستبدالها بخلايا فارغة أو رسائل مخصصة
منع أخطاء القسمة على صفر (#DIV/0!) من خلال تعديل الصيغ
استخدام صيغ تعالج حالات القسمة على صفر تلقائيًا يُعد نهجًا استباقيًا ومنهجيًا. فعلى سبيل المثال، الصيغة=D2/(C2-B2) تُرجع خطأً من نوع#DIV/0! كلما كانت قيمة الخلية C2 تساوي قيمة الخلية B2. وللتخلص من هذه الأخطاء في تقاريرك، يمكنك تحسين صيغتك باستخدام دالةIFERROR، التي تتحقق من وجود أي خطأ في الحساب وتتيح لك استبداله بخلية فارغة أو رسالة مخصصة. ويضمن لك هذا التعديل الحفاظ على تنظيم ورقة العمل وتجنب الارتباك الناتج عن رسائل الخطأ.
في الخلية E2، أدخل الصيغة=IFERROR(D2/(C2-B2),«»)، ثم اسحب مقبض التعبئة لأسفل عبر النطاق E2:E15 لتطبيقها على باقي الخلايا التي تحتاج إلى الحساب.
مع هذا التعديل، في حال حدوث قسمة على صفر أو أي خطأ آخر، ستعرض الصيغة خلية فارغة بدلًا من رسالة الخطأ، مما يُحقّق عرض بيانات أكثر نظافة واحترافية.

نصائح:يمكنك أيضًا استبدال«» في الصيغة بإشعار مخصّص، مثل«غير متاح»أو«غير صالح»، لتسهيل تحديد الإدخالات المشكوك فيها. ما عليك سوى تحديث الصيغة وفقًا لذلك:
=IFERROR(D2/(C2-B2),"Not Available")
ملاحظة:رغم أن دالةIFERROR بسيطة وفعّالة، فإن قدرتها الشاملة على اكتشاف الأخطاء تعني أنها ستُخفي جميع أنواع الأخطاء، وليس أخطاء#DIV/0! فقط. إذا كنت تستخدم صيغًا معقدة تتطلب معالجة مختلفة حسب نوع الخطأ، ففكّر في استخدام دالةIF مع دالةISERROR أو دالةIF مع دالةISERRلاستهداف الأخطاء بدقة وانتقائية أكبر. على سبيل المثال:
=IF((C2-B2)=0,"",D2/(C2-B2))تتفادى هذه الصيغة تحديدًا القسمة على صفر، مع الحفاظ على ظهور باقي الأخطاء لتسهيل عملية استكشافها وإصلاحها.
ومع ذلك، قد يصبح تعديل الصيغ أمرًا مرهقًا في المصنفات الكبيرة أو عندما لا يمكن تعديل هيكل الصيغ بسهولة. في مثل هذه الحالات، قد يكون استكشاف طرق أخرى لإزالة الأخطاء أكثر ملاءمة.
إزالة أخطاء القسمة على صفر (#DIV/0!) باختيار جميع الأخطاء وحذفها
إذا ظهرت أخطاء #DIV/0! بالفعل في نطاقك وكان تعديل الصيغ غير ممكن، يمكنك بسرعة تحديد وإزالة جميع قيم الخطأ باستخدام أداة Kutools لـ Excel’s تحديد الخلايا التي تحتوي على قيمة خاطئة. تُمكّنك هذه الأداة من تحديد الخلايا التي تحتوي على جميع رسائل الخطأ (بما في ذلك #DIV/0! و#N/A وغيرها) دفعة واحدة، مما يتيح لك حذفها أو معالجتها بشكل جماعي—وهو أمرٌ في غاية الفائدة عند التعامل مع أوراق العمل الكبيرة والمعقدة.
حدد النطاق الكامل الذي تريد البحث فيه عن الأخطاء. انقر علىKutools > تحديد > تحديد الخلايا التي تحتوي على قيمة خاطئة. ستقوم هذه العملية بتحديد جميع الخلايا التي تحتوي على أخطاء ضمن نطاقك المحدد بسرعة.
يتم تمييز جميع خلايا الخطأ في النطاق المحدد فورًا، كما هو موضح في لقطة الشاشة. ولإزالة هذه الأخطاء، ما عليك سوى الضغط على مفتاحDelete—فهذا يمحو خلايا الخطأ ويحافظ على نظافة ورقة العمل!

ملاحظة:تُحدِّد هذه الطريقةجميعالأخطاء في النطاق المحدد، وليس فقط أخطاء #DIV/0! فقط. إذا كنت ترغب في استهداف أنواع معيَّنة من الأخطاء، فقم بتصفية البيانات يدويًّا أو استخدم تقنيات بديلة.
تتميز هذه التقنية بأنها مفيدة عندما تريد تنظيف البيانات بسرعة ولا يمكن تعديل الصيغ. ومع ذلك، قد يؤدي حذف الخلايا ببساطة إلى فقدان البيانات، وقد لا تكون هذه الطريقة مناسبة إذا كانت هناك عمليات حسابية لاحقة تعتمد على تلك القيم.
إزالة أخطاء القسمة على صفر (#DIV/0!) باستبدال الأخطاء بخلايا فارغة
إذا كنت ترغب في استبدال رسائل الخطأ تلقائيًا—بما في ذلك #DIV/0!—بخلايا فارغة مع الحفاظ على بنية ورقة العمل والصيغ الأساسية، فإن أداة Kutools لـ Excel توفر لك ميزةمعالج شرط الخطأ التنسيق. تتيح لك هذه الميزة تحديد أنواع الأخطاء التي تريد استهدافها وكيفية عرضها، مما يخفي الأخطاء غير المرغوب فيها ويقدّم ورقة عمل أكثر تنظيمًا وسهولة في القراءة.
حدد النطاق المطلوب الذي قد تحتوي خلاياه على أخطاء، ثم انتقل إلىKutools > المزيد > معالج شرط الخطأ التنسيق.

في مربع حوارمعالج شرط الخطأ التنسيقي، افتح قائمةنوع الخطأواخترجميع رسائل الخطأ باستثناء #N/Aمن القائمة المنسدلة. وفي قسمعرض الخطأ، حدد الخيارلا شيء (خلية فارغة)، ثم انقر علىموافقللتأكيد.
ستقوم هذه العملية تلقائيًا بتحديث خلايا الصيغ ضمن النطاق لعرض خلايا فارغة بدلًا من رسائل الخطأ القياسية، باستثناء أخطاء #N/A إذا رغبت في إبقائها مرئية—مثلًا كأخطاء بحث متعمدة. يظهر الناتج أدناه:

نصائح:إذا رغبت، يمكنك تغيير خيار العرض لإظهار نص إشعار خطأ مخصص، مثل«غير صالح»أو«راجع البيانات»، لتسهيل استكشاف الأخطاء وإصلاحها. احرص على أن استبدال الأخطاء بخلايا فارغة قد يُخفي مشكلات بيانات جوهرية—لذا راجع الصيغ المشكوك فيها بشكل دوري.
ملاحظة:ستتجاهل هذه الطريقة أخطاء #N/A افتراضيًا ما لم تقم بتضمينها صراحةً في اختيارك.
Kutools لـ Excel- عزِّز Excel بقوة أكثر من 300 أداة أساسية، لتجعل عملك أسرع وأسهل، واستفد من ميزات الذكاء الاصطناعي لمعالجة البيانات بشكل أكثر ذكاءً وزيادة الإنتاجية.احصل عليه الآن
VBA: مسح تلقائي واستبدال أخطاء #DIV/0! بخلايا فارغة أو رسائل مخصصة
في بعض الأحيان، قد ترغب في أتمتة إزالة الأخطاء عبر ورقة العمل بأكملها أو العمل مع نطاقات لا يمكن فيها تعديل الصيغ عمليًا. يتيح لك VBA (Visual Basic for Applications) إنشاء ماكرو سريع يقوم بمسح تحديد النطاق واستبدال جميع أخطاء #DIV/0! إما بخلايا فارغة أو رسالة مخصصة. وهذه الطريقة مفيدة جدًّا للتنظيف لمرة واحدة أو مع مجموعات البيانات الكبيرة.
1. انتقل إلىأدوات المطور > Visual Basic لفتح نافذة محرر VBA. في المحرر، انقر علىإدراج > وحدة نمطيةوالصق الكود التالي في الوحدة النمطية:
Sub ReplaceDiv0WithBlank()
Dim WorkRng As Range
Dim Rng As Range
Dim xTitleId As String
Dim ReplaceText As String
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Select range to scan for #DIV/0! errors:", xTitleId, WorkRng.Address, Type:=8)
ReplaceText = Application.InputBox("Enter message to replace #DIV/0! (leave blank for empty cell):", xTitleId, "", Type:=2)
For Each Rng In WorkRng
If IsError(Rng.Value) Then
If Rng.Text = "#DIV/0!" Then
Rng.Value = ReplaceText
End If
End If
Next
End Sub 2.بعد إدخال الكود، أغلق محرر VBA. حدد النطاق الذي تريد استبدال أخطاء #DIV/0! فيه في Excel، ثم اضغط على مفتاحF5أو انقر على «تشغيل». اتبع التعليمات لاختيار النطاق المطلوب وإدخال نص الاستبدال المخصص (أو اتركه فارغًا).
ملاحظات ونصائح: يؤثر هذا الكود فقط على أخطاء #DIV/0!، ولن يتعامل مع أي نوع آخر من الأخطاء. إذا كنت تعمل مع نطاق كبير، فقد يستغرق المعالجة وقتًا أطول. وفي حال وجود خلايا محمية، تأكد من إلغاء قفلها؛ وإلا فلن يتمكن الماكرو من إجراء الاستبدالات فيها.
عرض توضيحي: إزالة أخطاء القسمة على صفر (#DIV/0!)
مقالات ذات صلة:
أفضل أدوات الإنتاجية لمكتبتك
عزِّز مهاراتك في 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 يومًا بكامل الميزات— بدون تسجيل، بدون بطاقة ائتمان
- أفضل قيمة— وفِّر مقارنةً بشراء الإضافات بشكل منفصل