البرمجة

توليف البيانات باستخدام VBA في Excel

في هذا السياق، يظهر لنا الحاجة إلى استخدام ماكرو لإنشاء عدة نسخ من البيانات عن طريق تعديل النسخة الرئيسية. يمكن تحقيق ذلك بسهولة باستخدام لغة البرمجة VBA (Visual Basic for Applications) في برنامج Microsoft Excel. يمكننا تطوير ماكرو يتعامل مع هذه المتطلبات بشكل فعّال.

للقيام بذلك، يمكننا كتابة كود VBA يقوم بفحص النسخة الرئيسية، وعندما يجد الرمز “###” يقوم بتعويضه بالقيم المحددة مثل “N01″، “N02″، وهكذا، حسب المتطلبات المحددة. بعد ذلك، يمكنه نسخ البيانات ولصقها في ورقة عمل جديدة.

إليك مثالًا على كيفية كتابة كود VBA لهذا الغرض:

vba
Sub GenerateInstances() Dim masterSheet As Worksheet Set masterSheet = ThisWorkbook.Sheets("اسم ورقة العمل الرئيسية") ' قم بتغيير "اسم ورقة العمل الرئيسية" إلى اسم الورقة الفعلية Dim newSheet As Worksheet Set newSheet = Sheets.Add newSheet.Name = "ورقة العمل المولدة" ' اسم الورقة الجديدة Dim lastRow As Long lastRow = masterSheet.Cells(masterSheet.Rows.Count, "A").End(xlUp).Row Dim instanceCounter As Integer instanceCounter = 1 For i = 1 To lastRow Dim currentValue As String currentValue = masterSheet.Cells(i, 1).Value If currentValue = "###" Then ' قم بتعويض "###" بالقيم المحددة (مثل N01، N02) masterSheet.Cells(i, 1).Value = "N" & Format(instanceCounter, "00") instanceCounter = instanceCounter + 1 End If Next i ' نسخ البيانات إلى الورقة الجديدة masterSheet.UsedRange.Copy newSheet.Range("A1") ' عرض رسالة إخطار بالانتهاء MsgBox "تم إنشاء النسخ بنجاح!", vbInformation End Sub

يرجى مراعاة أنه يجب تغيير “اسم ورقة العمل الرئيسية” إلى اسم الورقة الفعلية التي تحتوي على البيانات الأصلية. يمكنك تشغيل هذا الكود عن طريق فتح محرر VBA في Excel ولصقه في وحدة التعليمات، ثم تشغيل الكود.

المزيد من المعلومات

تطلب هذه المهمة إنشاء ماكرو باستخدام VBA في برنامج Microsoft Excel لتحقيق توليف وتكرار بيانات ورقة العمل بناءً على النسخة الرئيسية. يهدف الكود إلى تعويض جملة “###” بقيم مخصصة مثل “N01″، “N02″، وما إلى ذلك، وثم نسخ ولصق البيانات في ورقة عمل جديدة.

في بداية الكود، يتم تحديد ورقة العمل الرئيسية وإنشاء ورقة عمل جديدة. ثم يتم حساب آخر صف يحتوي على بيانات في ورقة العمل الرئيسية باستخدام lastRow.

الكود يستخدم حلقة (For Loop) للمرور عبر كل صف في الورقة الرئيسية. في كل مرة يتم فحص القيمة في الخلية. إذا كانت القيمة تساوي “###”، يتم تعويضها بالقيم المحددة مثل “N01” باستخدام instanceCounter والذي يتزايد بمقدار واحد في كل تكرار. يتم نسخ البيانات الناتجة في الورقة الجديدة.

أخيرًا، يتم عرض رسالة إخطار تُعلم المستخدم بأن النسخ قد تم إنشاؤها بنجاح. يتيح هذا الكود إجراء عمليات تكرار وتعديل فعّالة في Excel بشكل تلقائي، مما يسهم في تحسين الكفاءة وتوفير الوقت.

زر الذهاب إلى الأعلى