إدارة المستلزمات الطبية ليست مجرد عملية بيع وشراء، بل منظومة متكاملة تحتاج إلى دقة وتنظيم عاليين، خاصة مع حساسية المجال الطبي وضرورة توافر المنتجات في الوقت المناسب. من هنا تأتي أهمية تصميم برنامج إدارة مستلزمات طبية باستخدام Excel VBA يجمع بين سهولة الاستخدام وقوة التحليل، دون الحاجة إلى أنظمة معقدة أو برامج مكلفة.
في هذه السلسلة التعليمية على قناتي في يوتيوب بعنوان:
“تصميم برنامج إدارة مستلزمات طبية باستخدام Excel VBA احترافي + UserForm”
أشرح خطوة بخطوة كيفية بناء نظام متكامل لإدارة:
- المخزون الطبي
- فواتير البيع
- بيانات العملاء (مستشفيات – عيادات – صيدليات)
- بيانات الموردين
- المصروفات والتشغيل
- الحركات المالية والتقارير
رابط الكورس الكامل (Course): تصميم برنامج إدارة مستلزمات طبية باستخدام Excel VBA احترافي + UserForm – Course
لماذا برنامج إدارة مستلزمات طبية على Excel VBA؟
قطاع المستلزمات الطبية يختلف تمامًا عن أي نشاط تجاري آخر، لأنه يعتمد بشكل كبير على:
- دقة البيانات وسرعة تسجيلها
- متابعة المخزون الطبي لحظيًا
- معرفة المنتجات الأكثر طلبًا واستهلاكًا
- التحكم في المصروفات التشغيلية
- سرعة الوصول للمعلومات والتقارير في أي وقت
باستخدام Excel + VBA + UserForm يمكنك تصميم نظام احترافي لإدارة المستلزمات الطبية يناسب:
- مخازن المستلزمات الطبية
- شركات التوريد الطبي
- العيادات الكبيرة
- مراكز الأشعة والتحاليل
- الصيدليات التي تريد إدارة مخزون الأجهزة والمستلزمات بشكل منفصل عن الأدوية
كل ذلك بدون الحاجة لشراء برنامج جاهز أو الاعتماد على أنظمة معقدة، بل عبر ملف Excel واحد مؤتمت بالكامل.
هيكل ملف Excel لبرنامج المستلزمات الطبية
في الكورس نقوم ببناء ملف Excel منظم يحتوي على عدة أوراق عمل (Sheets)، بحيث يكون كل شيت مسؤول عن جزء معين من النظام:
- Dashboard
لوحة التحكم الرئيسية للنشاط الطبي، لعرض المؤشرات والتحليلات. - Products
قاعدة بيانات المستلزمات الطبية (الأصناف – الأكواد – الأسعار – الكميات – وحدة القياس). - Customers
بيانات العملاء: مستشفيات – عيادات – صيدليات – مراكز طبية. - Suppliers
بيانات الموردين: شركات الأجهزة الطبية، شركات المستلزمات، الموردين المحليين. - SalesHeader
رأس فواتير بيع المستلزمات (رقم الفاتورة، التاريخ، العميل، الإجمالي، طريقة الدفع…). - SalesDetails
تفاصيل الأصناف داخل كل فاتورة (كود الصنف، الكمية، السعر، الخصم…). - Expenses
مصروفات التشغيل الخاصة بالنشاط الطبي (نقل، صيانة، تشغيل، مرتبات، إيجار…). - Transactions
الحركات المالية: مدفوعات العملاء، سداد الموردين، المقبوضات، المدفوعات الأخرى.
هذا التقسيم يساعد على الحفاظ على قاعدة بيانات مرتبة، ويجعل كتابة الأكواد في VBA أسهل وأوضح، كما يسهل تطوير البرنامج لاحقًا بإضافة تقارير أو شاشات جديدة.
الواجهة الرئيسية: UserForm frmMenu
من أهم نقاط قوة المشروع هو تصميم واجهة رسومية احترافية (UserForm) للتعامل مع النظام بدلاً من العمل مباشرة داخل شيتات Excel. الواجهة الرئيسية تحمل الاسم:
frmMenu – القائمة الرئيسية للبرنامج
من خلال هذا الـ UserForm يمكن للمستخدم إدارة جميع أجزاء برنامج المستلزمات الطبية بشكل يومي، بدون الحاجة للتعامل المباشر مع الجداول أو الصيغ.
Frame1 – لوحة التحكم الجانبية (Side Menu)
داخل frmMenu يوجد إطار جانبي Frame1 يمثل لوحة تحكم تحتوي على أزرار تنقل أساسية مخصصة لطبيعة نشاط المستلزمات الطبية:
- btnMenu (الرئيسية)
للعودة إلى الصفحة الرئيسية في الـ Dashboard وعرض نظرة عامة على أداء النشاط الطبي. - btnPOS (المبيعات)
لإدارة فواتير بيع المستلزمات الطبية، تسجيل عمليات البيع، اختيار العميل، إضافة الأصناف، وطباعة الفاتورة إن لزم. - btnInventory (المخزون)
لمتابعة المخزون الطبي، عرض الكميات المتاحة، معرفة الأصناف التي اقتربت من النفاد، ومراقبة حركة الصرف والبيع. - btnCustomers (العملاء)
لإدارة بيانات العملاء (مستشفيات – عيادات – صيدليات)، إضافة عميل جديد، تعديل بيانات، البحث عن عميل محدد. - btnSuppliers (الموردين)
لتسجيل ومتابعة موردو الأجهزة والمستلزمات الطبية، وربطهم بفواتير الشراء والمدفوعات. - btnExpenses (المصروفات)
لتسجيل مصروفات التشغيل (نقل، صيانة، تشغيل، مرتبات، خدمات) وربطها بالتقارير المالية. - btnReports (التقارير)
للوصول إلى تقارير جاهزة مثل: تقرير المبيعات، تقرير المخزون، تقرير الأرباح، تقرير المصروفات، وأداء النشاط خلال فترة زمنية محددة. - btnRefresh (تحديث)
زر مهم لتحديث بيانات الـ Dashboard والمؤشرات المالية فورًا بعد أي عملية بيع أو تسجيل مصروف أو تعديل بيانات.
هذه اللوحة تجعل البرنامج قريبًا جدًا من شكل الأنظمة التجارية الجاهزة، ولكن داخل بيئة Excel التي يعرفها معظم المستخدمين.
MultiPage1 – الصفحة الرئيسية (Home)
داخل الـ UserForm الرئيسي نستخدم عنصر MultiPage لتقسيم الواجهة إلى صفحات متعددة، وأهمها صفحة Home التي تمثل الـ Dashboard أو لوحة مؤشرات الأداء.
في هذه الصفحة نعرض أهم مؤشرات الأداء الرئيسية (KPIs) الخاصة بالنشاط الطبي، منها:
- lblTotalSales – إجمالي مبيعات المستلزمات
يعرض إجمالي قيمة فواتير بيع المستلزمات الطبية خلال فترة معينة (شهر – سنة – من بداية النشاط). - lblNetProfit – صافي الربح
يعكس الأداء المالي الحقيقي بعد خصم جميع المصروفات من المبيعات، مما يساعد صاحب النشاط في تقييم الربحية. - lblTotalExpenses – إجمالي المصروفات
يعرض قيمة المصروفات المسجلة في شيت Expenses، مثل:- مصروفات النقل
- مصروفات الصيانة
- مصروفات التشغيل والاستهلاك
- lblStock – قيمة المخزون الطبي
القيمة الإجمالية للمستلزمات المتوفرة حاليًا في المخزن، بناءً على الكميات والأسعار المخزنية المسجلة في شيت Products. - lblLowStockAlert – تنبيه نقص المستلزمات
يعرض عدد الأصناف الطبية التي أوشكت على النفاد بناءً على حد أدنى للكمية (Reorder Level)، مما يساعد في اتخاذ قرارات الشراء قبل حدوث عجز. - lblProductWiner – أكثر مستلزم طبي مبيعًا
يعرض اسم أو كود أكثر صنف تم بيعه، لتحديد المنتجات الأعلى دورانًا (Fast Moving Items)، وبالتالي التركيز عليها في الشراء والتسعير.
LsvData – آخر العمليات الطبية
ضمن صفحة الـ Dashboard نستخدم عنصر عرض بيانات مثل ListView أو ListBox (LsvData) لعرض آخر العمليات المسجلة في النظام، مثل:
- آخر فواتير بيع المستلزمات الطبية
- آخر عمليات صرف من المخزن
- آخر المصروفات التشغيلية المسجلة
هذه النظرة السريعة تساعد المستخدم على متابعة النشاط أولًا بأول دون الحاجة للبحث في الشيتات أو فتح تقارير منفصلة.
لمن هذه الدورة؟ ومن سيستفيد منها؟
الكورس موجه لكل من يعمل في مجال المستلزمات الطبية ويريد امتلاك برنامج إدارة مستلزمات طبية مجاني وقابل للتطوير باستخدام Excel، وأيضًا للمطورين الذين يرغبون في تعلم كيفية:
- تصميم واجهات UserForm احترافية باستخدام VBA
- ربط Excel بقاعدة بيانات داخلية منظمة
- إنشاء نظام مبيعات ومخازن ومصروفات متكامل
- تحويل ملف Excel عادي إلى برنامج عملي يخدم نشاط تجاري حقيقي
سواء كنت:
- صاحب مخزن مستلزمات طبية
- صاحب شركة توزيع طبية
- محاسب أو مسؤول مخازن
- مطور Excel VBA تبحث عن مشروع عملي قوي
ستجد في هذه السلسلة تطبيقًا واقعيًا يمكن استخدامه وتعديله مباشرة على نشاطك.
واجهة المبيعات في برنامج إدارة المستلزمات الطبية باستخدام Excel VBA
تُعد واجهة المبيعات من أهم مكونات برنامج إدارة المستلزمات الطبية، حيث تمثل نقطة الربط بين المستخدم وقاعدة البيانات المسؤولة عن عمليات البيع، العملاء، وتحديث المخزون.
في هذا الجزء من المقالة يتم توضيح مكونات واجهة المبيعات ووظائفها الأساسية، بينما تم شرح آلية التنفيذ البرمجية والتطبيق العملي خطوة بخطوة من خلال الفيديو التوضيحي المرفق على قناة اليوتيوب.
الوصف العام لواجهة المبيعات
تم تصميم واجهة المبيعات بطريقة تضمن سهولة الاستخدام ودقة إدخال البيانات، مع الاعتماد على عناصر التحكم (Controls) الخاصة بـ Excel VBA UserForm، وذلك لتحقيق أعلى كفاءة ممكنة أثناء تنفيذ عمليات البيع اليومية.
مكونات الواجهة ووظائفها
1. البحث واختيار المنتجات
-
زر البحث (btnSearch)
يُستخدم لتنفيذ عملية البحث داخل قاعدة بيانات المنتجات اعتمادًا على اسم المنتج المُدخل. -
حقل إدخال اسم المنتج (txtSearchProduct)
يُستخدم لكتابة اسم المنتج أو جزء منه لتسهيل عملية البحث والوصول السريع للصنف المطلوب. -
قائمة عرض المنتجات (lstProducts)
تعرض جميع المنتجات المطابقة لنتيجة البحث، مع إمكانية اختيار المنتج المراد إضافته إلى سلة المبيعات.
2. بيانات العميل
-
قائمة أسماء العملاء (cmbCustomer)
قائمة منسدلة تحتوي على أسماء العملاء المسجلين بالنظام، ويتم اختيار العميل المرتبط بعملية البيع الحالية.
3. إدخال بيانات البيع
-
حقل الكمية (txtQty)
يُستخدم لتحديد الكمية المراد بيعها من المنتج المختار، مع إمكانية تطبيق قيود تحقق (Validation) لمنع إدخال قيم غير صحيحة. -
حقل السعر / المبلغ المدفوع (txtPaidAmount)
يُستخدم لإدخال قيمة السعر أو المبلغ الذي قام العميل بسداده، وفقًا لآلية الحساب المعتمدة داخل البرنامج.
4. الحسابات والتنبيهات
-
حقل الإجمالي (lblTotal)
يعرض إجمالي قيمة الأصناف المضافة إلى سلة المشتريات، ويتم تحديثه تلقائيًا عند إضافة أو حذف أي عنصر. -
حقل المتبقي أو التنبيه (lblRemaining)
يُستخدم لعرض المبلغ المتبقي على العميل أو إظهار تنبيه في حالة وجود فرق بين الإجمالي والمبلغ المدفوع.
5. إدارة سلة المشتريات
-
قائمة المنتجات المشتراة – سلة المبيعات (lstCart)
تعرض جميع الأصناف التي تمت إضافتها إلى السلة، متضمنة الكمية والسعر والقيمة الإجمالية لكل صنف. -
زر حذف صنف من السلة (btnRemoveItem)
يتيح حذف صنف محدد من سلة المبيعات دون التأثير على باقي العناصر. -
زر تفريغ السلة (btnClearCart)
يُستخدم لإزالة جميع الأصناف من السلة وإعادة الواجهة إلى حالتها الابتدائية.
6. إتمام العملية والتحكم في الواجهة
-
زر إتمام البيع (btnCheckout)
يقوم بتنفيذ عملية البيع بشكل نهائي، مع تسجيل البيانات في أوراق العمل المخصصة، وتحديث كميات المخزون تلقائيًا. -
زر الإغلاق (btnClose)
يُستخدم لإغلاق نموذج واجهة المبيعات وإنهاء العملية الحالية بأمان.
بهذا الشكل تكون واجهة المبيعات واضحة وسهلة الاستخدام، وتوفر تجربة عملية تساعد على إدارة عمليات البيع بكفاءة داخل برنامج إدارة المستلزمات الطبية باستخدام Excel VBA.
🔹 مسميات الحقول وعناصر واجهة المخزون (PageStock)
في هذه الحلقة قمنا بإنشاء صفحة مخصصة لإدارة المخزون باسم PageStock، وهي المسؤولة عن عرض الأصناف المتاحة والتحكم في إضافة المنتجات الجديدة داخل البرنامج.
🟦 أولًا: زر إضافة صنف جديد
-
btnAddProduct
زر مخصص لفتح نموذج (UserForm) إضافة صنف جديد.
عند الضغط عليه يتم فتح نموذج الإدخال:
-
frmAddProduct
وهو نموذج إضافة صنف جديد إلى المخزون.
🟦 محتويات نموذج إضافة الصنف (frmAddProduct)
يحتوي نموذج frmAddProduct على الحقول التالية:
-
txtProductName
حقل مخصص لكتابة اسم الصنف. -
comCategory
قائمة منسدلة لعرض أقسام أو تصنيفات المنتجات. -
comSupplier
قائمة منسدلة لعرض أسماء الموردين المسجلين. -
txtQty
حقل لإدخال الكمية المشتراة من الصنف. -
txtPrice
حقل لإدخال سعر شراء الوحدة. -
lblTotalBuyProduct
Label لعرض إجمالي سعر الشراء بشكل تلقائي بناءً على الكمية وسعر الشراء. -
txtPriceSale
حقل مخصص لإدخال سعر بيع القطعة. -
txtStockLow
حقل لتحديد حد انخفاض المخزون، ويُستخدم للتنبيه عند وصول الكمية إلى هذا الحد. -
btnAddAndSave
زر لحفظ بيانات الصنف وإضافته إلى المخزون. -
btnClose
زر لإلغاء العملية وإغلاق النموذج بدون حفظ.
🟦 عناصر البحث والعرض داخل صفحة المخزون (PageStock)
بالإضافة إلى نموذج الإضافة، تحتوي صفحة PageStock على العناصر التالية:
-
txtSearchStock
حقل لكتابة اسم الصنف المراد البحث عنه. -
btnSearchStock
زر لتنفيذ عملية البحث عن الصنف داخل المخزون. -
Lsv8Col
ListView مخصص لعرض جميع الأصناف المتواجدة في المخزون، ويشمل:-
اسم الصنف
-
سعر الشراء
-
سعر البيع
-
الكمية المتوفرة حاليًا
-
اسم المورد
-
الخلاصة
نظام إدارة المستلزمات الطبية الذي نقدمه هو حل شامل ومتكامل لإدارة المخزون والمحاسبة في القطاع الصحي. النظام مبني على تقنيات موثوقة (Microsoft Excel VBA) ويوفر مجموعة واسعة من الوظائف المصممة خصيصاً لاحتياجات القطاع الصحي.
المميزات الرئيسية للنظام تشمل:
إدارة شاملة للمخزون مع تتبع دقيق للكميات
إدارة متكاملة للعملاء والمبيعات
إدارة فعالة للموردين والمشتريات
نظام محاسبي دقيق مع تتبع جميع المعاملات
تقارير شاملة ومفصلة بصيغة HTML احترافية
واجهة مستخدم سهلة وبسيطة
دعم كامل للغة العربية
تكلفة منخفضة (يعمل على Excel الموجود)