تحميل مجانى فورم ادخال بيانات كامل UserForm Data Entry Excel في إكسيل
إذا كنت تبحث عن نموذج إدخال بيانات Excel جاهز أو فورم إدخال بيانات في Excel يساعدك على تنظيم البيانات وعرضها والبحث داخلها من خلال UserForm، فهذا المقال يشرح فكرة النموذج وطريقة التعامل مع البيانات باستخدام Excel VBA وListBox.
يعتمد المثال على نموذج إدخال بيانات يمكن من خلاله التعامل مع بيانات المنتجات داخل ورقة العمل، مع عرض البيانات في قائمة والبحث داخلها وتعديلها وحذفها وفق الإجراءات الموجودة في النموذج. كما يوضح المقال أهم أجزاء كود البحث وربط نتائج البحث بالـListBox.
ماذا يقدم نموذج إدخال البيانات في Excel؟
نظام إدارة المنتجات باستخدام UserForm في إكسيل هو أداة تساعد المستخدم على إضافة وتعديل وحذف وعرض بيانات المنتجات بطريقة منظمة من خلال واجهة UserForm. ويقدم هذا الدليل شرحًا لأجزاء النموذج وطريقة البحث عن البيانات وعرض نتائجها داخل ListBox.
- نظام إدارة المنتجات بإكسيل
- UserForm متكامل للمخازن
- حفظ بيانات المنتجات في إكسيل
- تعديل وحذف المنتجات
- بحث متقدم في قوائم إكسيل
- واجهة مستخدم للمخازن
- برمجة VBA لإدارة البيانات
- نموذج إدخال بيانات منتجات
- ربط ListBox مع ورقة العمل
- أتمتة بعض عمليات التعامل مع البيانات في إكسيل
مكونات النظام الأساسية
1. واجهة إدخال البيانات (UserForm)
- حقول الإدخال: ID، التاريخ، اسم المنتج، الكمية، السعر، الإجمالي.
- أزرار التحكم: حفظ، تعديل، حذف، جديد.
- قائمة عرض البيانات (ListBox).
- صندوق البحث الفوري.
2. ميزات البحث والتصفية
يعتمد البحث في المثال على قراءة البيانات من ورقة العمل ثم فحص الصفوف والأعمدة المحددة وإظهار النتائج المطابقة داخل ListBox.
تعريف المتغيرات
Dim ws As WorksheetDim lastRow As Long, i As LongDim dataArray() As VariantDim searchResults As CollectionDim matchFound As Boolean
- ws: متغير لورقة العمل.
- lastRow: سيخزن رقم آخر صف به بيانات.
- i: عداد للحلقات التكرارية.
- dataArray: مصفوفة لتخزين البيانات التي ستظهر في الليست بوكس.
- searchResults: مجموعة لتخزين نتائج البحث.
- matchFound: متغير منطقي يحدد إذا وجد تطابق في البحث.
3. تهيئة الكائنات
Set ws = ThisWorkbook.Sheets("Sheet1")
Set searchResults = New Collection
- تحديد ورقة العمل التي تحتوي البيانات، ويجب تغيير
Sheet1لاسم الورقة الفعلي. - إنشاء كائن جديد من نوع Collection لتخزين نتائج البحث.
4. إيجاد آخر صف به بيانات
lastRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row
5. البحث عند وجود نص بحث
If searchText <> "" ThenFor i = 2 To lastRowmatchFound = FalseFor col = 1 To 6If InStr(1, ws.Cells(i, col).Value, searchText, vbTextCompare) > 0 ThenmatchFound = TrueExit ForEnd IfNext col
- إذا كان هناك نص بحث، يتم البحث في كل صف من الصف 2 إلى آخر صف.
- لكل صف، يتم البحث في الأعمدة من 1 إلى 6 (A إلى F).
InStrتبحث عن النص داخل الخلية، مع استخدامvbTextCompare.- إذا وجد تطابق، تصبح قيمة
matchFoundهيTrueويتم الخروج من حلقة البحث في الأعمدة.
6. تخزين النتائج المتطابقة
If matchFound ThensearchResults.Add Array(ws.Cells(i, 1).Value, ws.Cells(i, 2).Value, _ws.Cells(i, 3).Value, ws.Cells(i, 4).Value, _ws.Cells(i, 5).Value, ws.Cells(i, 6).Value)End IfNext i
إذا وجد تطابق، تتم إضافة قيم الصف من العمود A إلى العمود F إلى مجموعة النتائج.
7. تحضير المصفوفة للنتائج
If searchResults.Count > 0 ThenReDim dataArray(1 To searchResults.Count, 1 To 6)For i = 1 To searchResults.CountFor j = 1 To 6dataArray(i, j) = searchResults(i)(j - 1)Next jNext iElseReDim dataArray(0 To 0, 1 To 6)dataArray(0, 1) = "لا توجد نتائج"End If
- إذا كانت هناك نتائج، يتم إنشاء مصفوفة ثنائية الأبعاد بحجم النتائج.
- يتم ملء المصفوفة بقيم نتائج البحث.
- إذا لم تكن هناك نتائج، يتم تجهيز صف يظهر رسالة "لا توجد نتائج".
8. حالة عدم وجود نص بحث
ElseIf lastRow > 1 ThendataArray = ws.Range("A2:F" & lastRow).ValueElseReDim dataArray(0 To 0, 1 To 6)dataArray(0, 1) = "لا توجد بيانات"End IfEnd If
- إذا لم يكن هناك نص بحث، يتم تحميل البيانات من
A2إلى آخر صف. - إذا لم تكن هناك بيانات بعد صف العناوين، تظهر رسالة "لا توجد بيانات".
تعبئة الـListBox
With Me.ListBox1.ColumnCount = 6.ColumnWidths = "50;80;150;60;60;60".List = dataArrayEnd With
- تحديد أن الـListBox سيعرض 6 أعمدة.
- تحديد عرض كل عمود، ويمكن تعديل القيم حسب الحاجة.
- تعيين مصدر البيانات للمصفوفة التي تم إعدادها.
ملاحظات على خوارزمية البحث
- البحث غير حساس لحالة الأحرف بسبب استخدام
vbTextCompare. - يبحث عن النص داخل جزء من محتوى الخلية وليس فقط في البداية.
- يبحث في الأعمدة المحددة من 1 إلى 6 في هذا المثال.
- يعرض الصفوف التي تحتوي على النص المطلوب في أي من الأعمدة المحددة.
3. وظائف التعديل والحذف
- تعديل البيانات: فتح نموذج التعديل مع تعبئة الحقول تلقائيًا.
- حذف البيانات: تنفيذ عملية الحذف مع تأكيد العملية وتسجيل النسخ الاحتياطي، وفقًا لما هو موجود في النظام المستخدم.
فوائد استخدام UserForm لإدخال البيانات في Excel
- توفير الوقت: يسهل إدخال البيانات من خلال واجهة UserForm بدلًا من التعامل المباشر مع الخلايا.
- تقليل الأخطاء: يمكن استخدام إجراءات برمجية للتحقق من البيانات المدخلة حسب تصميم النموذج.
- البحث: يتيح المثال البحث داخل البيانات وعرض النتائج في ListBox.
- واجهة استخدام منظمة: تجمع الحقول والأزرار ونتائج البيانات في نموذج واحد.
ملاحظة: تم تجنب تحديد نسبة ثابتة مثل "70%" لتوفير الوقت أو اعتبار التحقق من البيانات ميزة عامة مؤكدة، لأن هذه النسب والوظائف يجب أن تكون مدعومة بما هو موجود فعليًا في ملف الـUserForm المستخدم.
كيفية التثبيت والاستخدام
- فتح محرر VBA باستخدام Alt + F11.
- إضافة UserForm جديد.
- نسخ الأكواد السابقة.
- ربط الأزرار مع الإجراءات.
- اختبار النظام.
نصائح لتحسين الأداء
- استخدام
Application.ScreenUpdating = Falseأثناء عمليات التحميل عند الحاجة. - تفعيل خاصية
MultiSelectفي الـListBox عند الحاجة للتعامل مع عدة عناصر. - يمكن إضافة وظائف أخرى إلى النموذج حسب تصميم المشروع، مثل تصدير البيانات إلى PDF أو Excel، إذا كانت هذه الوظائف موجودة فعليًا في الملف المستخدم.
هل يمكن استخدام UserForm لإدارة بيانات المنتجات في Excel؟
نعم، يمكن استخدام UserForm كواجهة منظمة لإدخال البيانات والبحث فيها وعرضها داخل Excel، كما يمكن ربط النموذج بورقة العمل واستخدام VBA لتنفيذ إجراءات مثل الحفظ والتعديل والحذف والبحث، بحسب تصميم النموذج والأكواد المستخدمة.
وإذا كنت تبحث عن تحميل نموذج إدخال بيانات Excel جاهز مجانًا، يمكنك الاستفادة من النموذج المتاح في هذا المقال، ثم تعديله بما يناسب طبيعة البيانات التي تريد إدارتها.
روابط مفيدة مرتبطة بـ UserForm وExcel VBA
إذا كنت تريد التوسع في إنشاء نماذج إدخال البيانات والبحث باستخدام Excel VBA، يمكنك الاطلاع على:
- شرح UserForm في Excel VBA وإنشاء نموذج إدخال بيانات
- تحميل يوزرفورم كامل للبحث متعدد المعايير
- شيت Excel للمخازن: الوارد والمنصرف والمرتجعات والإهلاك والتقارير
تحميل نموذج UserForm لإدخال البيانات في Excel
كلمات مفتاحية مرتبطة بالمقال
نموذج إدخال بيانات Excel جاهز، تحميل نموذج إدخال بيانات جاهز، نموذج إدخال بيانات اكسل، UserForm Data Entry Excel، فورم إدخال بيانات Excel، UserForm Excel VBA، نموذج إدخال بيانات منتجات، برمجة UserForm في Excel، البحث في بيانات Excel باستخدام UserForm، ربط ListBox مع ورقة العمل، Excel VBA.