بسم الله الرحمن الرحيم
اهلا بكم متابعى موقع عالم الاوفيس
Excel VBA في 5 دقائق فقط : استخرج أسماء الأخوه الاشقاء من قائمة الطلاب بسهولة! (دورة للمبتدئين)
تعتبر لغة برمجة VBA
(Visual Basic for Applications) أداة قوية لتعزيز قدرات
برنامج إكسيل، وتوفير حلول مخصصة لمختلف المهام. من بين هذه المهام، القدرة على استخراج
معلومات محددة من كميات كبيرة من البيانات، مثل أسماء الطلاب الأخوات من قائمة طويلة
بأسماء الطلاب. في هذا المقال، سنتناول بالتفصيل كيفية استخدام VBA لتحقيق
هذا الهدف، مع تقديم أمثلة عملية وشروحات مبسطة.
لماذا VBA؟
التحكم الدقيق: تتيح VBA
للمستخدم التحكم الكامل في عمليات إكسيل، وتنفيذ مهام معقدة لا يمكن
تحقيقها بالوسائل التقليدية.
الأتمتة: يمكن لـ VBA
أتمتة مهام متكررة، مما يوفر الوقت والجهد.
التخصيص: يمكن تكييف أكواد VBA لتناسب
احتياجات المستخدمين المختلفة.
خطوات استخراج أسماء الطلاب الأخوات
باستخدام VBA
1. تحضير البيانات:
يجب أن تكون بيانات الطلاب منظمة في
جدول داخل ورقة عمل إكسيل.
يجب تحديد عمود يحتوي على أسماء الطلاب.
يمكن إضافة أعمدة إضافية لتحديد العائلة
أو أي معلومات أخرى ذات صلة.
2. كتابة كود VBA:
يتم فتح محرر VBA عن طريق
الضغط على Alt+F11.
يتم إنشاء نموذج جديد (Module).
يبدأ كتابة الكود، والذي يتضمن عادةً:
تحديد النطاق: تحديد الخلايا التي تحتوي
على أسماء الطلاب.
التكرار: استخدام حلقة تكرار (مثل For Each) للتعامل مع كل اسم على حدة.
الفحص: مقارنة الأسماء للعثور على الأسماء
المتشابهة (أي الأسماء التي تشير إلى أخوات).
التخزين: تخزين أسماء الأخوات في قائمة
أو نطاق آخر.
3. تنفيذ الكود:
يتم تشغيل الكود عن طريق الضغط على
زر التشغيل في محرر VBA أو عن طريق إنشاء زر في ورقة العمل لتشغيل الكود عند النقر عليه.
مثال على كود VBA
Sub
split_same_names()
Dim
lastrow As Long
Dim
firstname As String, midllename As String, lastname As String
Dim
nextrow As Long
lastrow
= Cells(Rows.Count, "a").End(xlUp).Row
nextrow
= 2
Range("c2:c100000").ClearContents
For i = 2 To lastrow
firstname = Split(Cells(i,
"a").Value, " ")(0)
midllename = Split(Cells(i,
"a").Value, " ")(1)
lastname = Split(Cells(i,
"a").Value, " ")(2)
For j = i + 1 To
lastrow
If Split(Cells(j, "A").Value,
" ")(1) = midllename And Split(Cells(j, "a").Value, "
")(2) = lastname Then
Cells(nextrow, "c").Value =
Cells(i, "a").Value
nextrow = nextrow + 1
Cells(nextrow, "c").Value =
Cells(j, "a").Value
nextrow = nextrow + 1
End If
Next j
Next i
End Sub
تطوير الكود
يمكن تطوير هذا الكود الأساسي ليشمل ميزات
إضافية مثل:
الترتيب: ترتيب أسماء الأخوات حسب الحاجة.
التصفية: تصفية النتائج بناءً على معايير معينة
(مثل الصف أو القسم).
إنشاء جدول جديد: إنشاء جدول جديد يحتوي على أسماء
الأخوات فقط.
إنشاء مخطط: إنشاء مخطط بياني يوضح عدد الأخوات في
كل صف أو قسم.
يعتبر استخدام VBA
لاستخراج أسماء الطلاب الأخوات مثالًا بسيطًا على قدرات هذه اللغة
القوية. يمكن تطبيق نفس المبادئ على مهام أكثر تعقيدًا وتحليل بيانات أكثر شمولية.
من خلال تعلم أساسيات VBA،
يمكن للمستخدمين تخصيص إكسيل ليتناسب مع احتياجاتهم الخاصة وتحسين إنتاجيتهم.
ملاحظات:
التخصيص: يجب تعديل الكود ليناسب بنية البيانات الموجودة
لديك.
الأخطاء: قد تواجه بعض الأخطاء أثناء كتابة وتنفيذ
الكود، لذا يجب فحص الكود بعناية.
قد يعجبك ايضا
- تحميل برنامج حركة الخزينة مجانا
- اسطوانة التعريفات الشاملة DriverPack Solution بدون نت
- شيت بجميع اكواد الخدمة في فورى Fawry اكواد فوري
- برنامج مجانى لمتابعة حركة الخزينة Excel
- تحميل برنامج مخازن مجانى 100 % كامل ومفتوح المصدر | Store Management System
- برنامج متابعة الشيكات (شيكات دفع / شيكات قبض ) Cheques Management + نسخة تجريبية
- تحميل برنامج الكاشير2020 المجانى لادارة حسابات المحلات التجارية Cashier
- تحميل برنامج مجانى حضور وانصراف الموظفين بالبصمة( دوام الموظفين المجانى)
- تحميل برنامج مخازن مجانى 100%
- -برنامج المنجز 2024
- تحميل برنامج محاسبى كامل كفعل مدى الحياة