نظام إدارة العملاء والموردين على Excel لوحة تحكم تقولك مين مديون لمين في ثانية واحدة
نظام Excel جاهز بمعادلات احترافية (بدون أي برمجة) لمتابعة حسابات العملاء والموردين، مع كشف حساب تفصيلي قابل للطباعة لكل عميل ومورد، ولوحة تحكم تلقائية تعرض أكبر 5 عملاء وموردين حسب الرصيد المستحق.
01 المشكلة اللي بتعاني منها كل يوم
لو معاك محل أو مشروع صغير، وعندك عملاء بيدفعولك على دفعات وموردين انت بتدفعلهم على دفعات... اسأل نفسك سؤال بسيط: لو حد سألك دلوقتي "مين مديون لك بكام؟" و"انت مديون لمين بكام؟"، هتعرف تجاوب فورًا، ولا هتقعد تدوّر في دفاتر وفواتير متناثرة؟
من غير متابعة دقيقة، بتضيع منك مبالغ من غير ما تحس، بتنسى مواعيد تحصيل من عملاء، وممكن تدفع لمورد فلوس زيادة من غير قصد لأنك مش متابع الرصيد الحقيقي أول بأول.
02 مميزات النظام الكامل
حساب رصيد تلقائي
رصيد كل عميل ومورد يتحدث فورًا فور تسجيل أي فاتورة أو دفعة
كشف حساب فوري
اختار كود العميل أو المورد وشوف كل حركاته والرصيد بعد كل عملية
بحث تلقائي بالكود
اكتب كود العميل مرة واحدة وكل بياناته تظهر تلقائيًا
لوحة تحكم ذكية
أكبر 5 عملاء وأكبر 5 موردين حسب الرصيد المستحق في نظرة واحدة
طباعة بضغطة واحدة
زر VBA حقيقي يفتح معاينة طباعة كشف الحساب مباشرة بدون Ctrl+P
متوافق مع كل الإصدارات
يعمل من Excel 2010 وحتى Microsoft 365 بدون أي دوال حديثة معقدة
03 المعادلات كاملة — مشروحة خطوة بخطوة
النظام مبني بالكامل على معادلات Excel قياسية (بدون أي دوال حديثة زي TEXTJOIN أو FILTER) عشان يشتغل على أي جهاز مهما كان إصدار الأوفيس. خليني أوريك كل معادلة أساسية وهي بتعمل إيه بالظبط:
=IF($A4="","",SUMIFS(حركة_حساب_العملاء!$F:$F,حركة_حساب_العملاء!$B:$B,$A4))
SUMIFS بتجمع كل قيم عمود "مدين" في شيت حركة الحساب، بس للصفوف اللي كود العميل فيها يساوي كود العميل الحالي. الـ IF برّه بيمنع ظهور صفر لو الصف فاضي أصلًا.
=IF($A4="","",$E4+$F4-$G4)
معادلة بسيطة ومباشرة: الرصيد الحالي = الرصيد الافتتاحي + إجمالي المدين (الفواتير) − إجمالي الدائن (المدفوعات). رقم موجب معناه العميل لسه مديون لك، ورقم سالب معناه إنت مديون له.
=IF($B4="","",IFERROR(INDEX(العملاء!$B:$B,MATCH($B4,العملاء!$A:$A,0)),"غير موجود"))
ده أهم تريك في الملف: MATCH بتدوّر على كود العميل في شيت العملاء وتجيب رقم صفه، وINDEX بتستخدم الرقم ده تجيب الاسم من نفس الصف. النتيجة: تكتب الكود بس، والاسم يظهر لوحده — ولو الكود غلط، هتشوف "غير موجود" بدل خطأ محيّر.
=IF($B4="","",COUNTIFS($B$4:$B4,$B4)) ' عمود I: ترتيب الحركة لهذا العميل تحديدًا =IF($B4="","",$B4&"|"&$I4) ' عمود J: كود العميل + رقم الحركة معًا
المشكلة اللي المعادلة دي بتحلها: عندك مئات الحركات المختلطة (لعملاء كتير) في شيت واحد، وعايز كشف الحساب يجيب بس حركات عميل معين بترتيبها الصحيح. COUNTIFS بتعدّ "دي الحركة رقم كام لنفس العميل ده"، وبعدين بنلزّق الكود مع الرقم في مفتاح واحد فريد (زي C001|1، C001|2).
=IFERROR(MATCH($B$4&"|"&(ROW()-8),حركة_حساب_العملاء!$J:$J,0),"")
هنا بتتبني نفس المفتاح المركب (كود العميل + رقم الصف الحالي) وتدوّر عليه في عمود J اللي عملناه فوق. النتيجة: كل صف في كشف الحساب بيجيب الحركة اللي بترتيبها بالظبط، من غير ما تتلخبط حركات عميل تاني معاها.
الصف الأول: =IF($H9="","",$E$6+E9-F9) باقي الصفوف: =IF($H10="","",G9+E10-F10)
كل صف بياخد رصيد الصف اللي قبله ويضيفله المدين ويطرح منه الدائن — بالظبط زي دفتر حسابات حقيقي على الورق، لكن هنا بيتحسب تلقائيًا لحظة إدخال أي حركة جديدة.
' عمود K مساعد في شيت العملاء (مخفي) لتفادي تكرار نفس الرصيد بين عميلين: =IF($A4="",-999999999,$H4+ROW()/100000000) ' في لوحة التحكم: =IFERROR(INDEX(العملاء!$B$4:$B$203,MATCH(LARGE(العملاء!$K$4:$K$203,1),العملاء!$K$4:$K$203,0)),"-")
LARGE بتجيب أكبر قيمة (الأولى، الثانية... لحد الخامسة)، لكن لو اتنين عندهم نفس الرصيد بالظبط هيحصل تعارض في MATCH. الحل: بنضيف كسر صغير جدًا لكل رصيد (رقم الصف مقسوم على 100 مليون) عشان كل قيمة تبقى فريدة تمامًا من غير ما تأثر على الترتيب الفعلي.
04 كود طباعة كشف الحساب بضغطة واحدة (النسخة الكاملة)
في النسخة الكاملة، زر "🖨️ طباعة الكشف" مربوط بكود VBA بسيط جدًا — بيتأكد الأول إنك اخترت عميل، وبعدين يفتح معاينة الطباعة مباشرة:
Sub PrintCustomerStatement() If Sheets("كشف_حساب_عميل").Range("B4").Value = "" Then MsgBox "الرجاء اختيار كود العميل أولاً.", vbExclamation Exit Sub End If Sheets("كشف_حساب_عميل").PrintPreview End Sub
نفس الفكرة بالظبط مطبقة لكشف حساب المورد. الكود بسيط ومقروء، ومربوط بزر واحد فوق الصفحة — تضغط وتطبع، من غير Ctrl+P.
05 خطوات الاستخدام — للمبتدئ الجديد
- حمّل الملف وافتحهاضغط زر التحميل المجاني أسفل المقالة وافتح الملف بـ Microsoft Excel
- سجّل بيانات شركتكافتح شيت "الإعدادات" واكتب اسم شركتك وعنوانها وهاتفها — تظهر تلقائيًا في كل التقارير
- أضف عملاءكفي شيت "العملاء" سجّل كود واسم وهاتف وعنوان ورصيد افتتاحي لكل عميل
- سجّل الفواتير والمدفوعاتفي شيت "حركة حساب العملاء" اكتب التاريخ وكود العميل والمبلغ (مدين أو دائن)
- اطبع كشف الحسابمن شيت "كشف حساب عميل" اختار الكود، وهيظهر كل الحركات والرصيد جاهز للطباعة
- (النسخة الكاملة) افتح لوحة التحكمهتلاقي أكبر 5 عملاء وموردين حسب الرصيد المستحق تلقائيًا
06 مقارنة النسخة المجانية والنسخة الكاملة
| الميزة | المجانية | الكاملة |
|---|---|---|
| إدارة حسابات العملاء | ✓ | ✓ |
| كشف حساب عميل قابل للطباعة | ✓ | ✓ |
| حساب الرصيد تلقائيًا بالكامل | ✓ | ✓ |
| إدارة حسابات الموردين | ✗ | ✓ |
| كشف حساب مورد قابل للطباعة | ✗ | ✓ |
| لوحة التحكم (أكبر 5 عملاء وموردين) | ✗ | ✓ |
| زر طباعة بضغطة واحدة (VBA) | ✗ | ✓ |
07 اختار النسخة المناسبة ليك
- إدارة حسابات العملاء كاملة
- كشف حساب عميل جاهز للطباعة
- حتى 200 عميل
- كل مميزات النسخة المجانية
- إدارة الموردين بنفس القوة
- لوحة تحكم احترافية
- طباعة بضغطة واحدة (VBA)