كيفية استخدام formular1c1 في vba (مع أمثلة)


يمكنك استخدام الخاصية FormulaR1C1 في VBA لإنشاء مرجع مطلق أو مرجع نسبي لخلية معينة على ورقة.

هناك طريقتان شائعتان لاستخدام هذه الخاصية:

الطريقة الأولى: استخدم صيغة R1C1 لإنشاء مرجع مطلق

 Sub MultipyCell()

Range(" C5 ").FormulaR1C1 = " =R1C1*20 "

End Sub

عند تشغيل هذا الماكرو المحدد، ستعرض الخلية C5 نتيجة الخلية الموجودة في الصف 1 والعمود 1 مضروبة في 20.

الطريقة الثانية: استخدم صيغة R1C1 لإنشاء مرجع نسبي

 Sub MultipyCell()

Range(" C5 ").FormulaR1C1 = " =R[-4]C[-2]*20 "

End Sub

عند تشغيل هذا الماكرو المحدد، ستعرض الخلية C5 نتيجة الخلية 4 صفوف أعلاه وعمودين على يسارها مضروبة في 20.

توضح الأمثلة التالية كيفية استخدام كل أسلوب عمليًا مع ورقة Excel التي تحتوي على القيمة 10 في الخلية A1 :

مثال 1: استخدم صيغة R1C1 لإنشاء مرجع مطلق

يمكننا إنشاء الماكرو التالي لضرب قيمة الخلية في الصف 1 والعمود 1 في 20 وعرض النتائج في الخلية C5 :

 Sub MultipyCell()

Range(" C5 ").FormulaR1C1 = " =R1C1*20 "

End Sub

عندما نقوم بتشغيل هذا الماكرو، نحصل على الإخراج التالي:

يمكننا أن نرى أن Excel استخدم الصيغة =$A$1*20 لحساب النتيجة في الخلية C5 .

وبما أننا استخدمنا R1C1 في صيغتنا في VBA، فقد قمنا بعمل مرجع مطلق للخلية الموجودة في الصف الأول والعمود الأول، وهي الخلية A1 .

مثال 2: استخدم صيغة R1C1 لإنشاء مرجع نسبي

يمكننا إنشاء الماكرو التالي لضرب قيمة الخلية التي تقع فوق 4 صفوف وعمودين على يسار الخلية C5 في 20 وعرض النتائج في الخلية C5 :

 Sub MultipyCell()

Range(" C5 ").FormulaR1C1 = " =R[-4]C[-2]*20 "

End Sub

عندما نقوم بتشغيل هذا الماكرو، نحصل على الإخراج التالي:

يمكننا أن نرى أن Excel استخدم الصيغة =A1*20 لحساب النتيجة في الخلية C5 .

نظرًا لأننا استخدمنا الأقواس مع R[-4]C[-2] في صيغتنا في VBA، فقد قمنا بعمل مرجع نسبي للخلية الموجودة على بعد 4 صفوف أعلاه وعمودين على يسار الخلية C5 ، وهي الخلية A1 .

ملاحظة : يمكنك العثور على الوثائق الكاملة لخاصية VBA FormulaR1C1 هنا .

مصادر إضافية

تشرح البرامج التعليمية التالية كيفية تنفيذ المهام الشائعة الأخرى في VBA:

VBA: صيغة بسيطة لـ “إذا كانت الخلية تحتوي على”
فبا: كيفية حساب تكرارات الأحرف في سلسلة
VBA: كيفية التحقق مما إذا كانت السلسلة تحتوي على سلسلة أخرى

Add a Comment

ایمئیل یایینلانمایاجاق ایسته‎نیله‎ن بوشلوقلار خاللانمیشدیر *