كيفية استخدام union في vba (مع مثال)
يمكنك استخدام طريقة Union في VBA لدمج نطاقات متعددة في نطاق واحد.
فيما يلي طريقة شائعة لاستخدام هذه الطريقة عمليًا:
SubUseUnion ()
Set UnionRange = Application.Union(Range("A1:A10"), Range("C1:C10"))
UnionRange.Formula = "=RANDBETWEEN(1, 100)"
End Sub
يجمع هذا الماكرو المحدد بين النطاق A1:A10 و C1:C10 في نطاق واحد، ثم يقوم بتعيين صيغة Excel =RANDBETWEEN(1, 100) لكل قيمة في هذا النطاق المدمج، مما ينتج عنه قيمة عشوائية بين 1 و100.
يوضح المثال التالي كيفية استخدام أسلوب Union في VBA عمليًا.
مثال: كيفية استخدام Union في VBA لدمج النطاقات
يمكننا تعريف الماكرو التالي في VBA لاستخدام طريقة Union لدمج النطاقات A1:A10 و C1:C10 :
SubUseUnion ()
Set UnionRange = Application.Union(Range("A1:A10"), Range("C1:C10"))
UnionRange.Formula = "=RANDBETWEEN(1, 100)"
End Sub
عندما نقوم بتشغيل هذا الماكرو، نحصل على الإخراج التالي:
تحتوي الآن كل خلية في النطاقين A1:A10 و C1:C10 على الصيغة =RANDBETWEEN(1, 100) ، والتي تُرجع عددًا صحيحًا عشوائيًا بين 1 و100.
لاحظ أيضًا أنه يمكننا توفير أكثر من نطاقين لطريقة الاتحاد .
على سبيل المثال، يمكننا إنشاء الماكرو التالي الذي يستخدم الأسلوب Union لدمج ثلاثة نطاقات مختلفة، ثم إدراج صيغة في خلية كل نطاق:
SubUseUnion () Set UnionRange = Application.Union(Range("A1:A10"), Range("C1:C10"), Range("D1:D5" )) UnionRange.Formula = "=RANDBETWEEN(1, 100)" End Sub
عندما نقوم بتشغيل هذا الماكرو، نحصل على الإخراج التالي:
النطاقات الثلاثة التي قمنا بدمجها في نطاق واحد تحتوي الآن جميعها على صيغة RANDBETWEEN .
ملاحظة : يمكنك العثور على الوثائق الكاملة لأسلوب VBA Union هنا .
مصادر إضافية
تشرح البرامج التعليمية التالية كيفية تنفيذ المهام الشائعة الأخرى في VBA:
كيفية استخدام التقاطع في VBA
كيفية حساب عدد الأعمدة المستخدمة في VBA
كيفية حساب عدد الأوراق في المصنف في VBA