فبا: كيفية تعيين قيمة خلية في ورقة أخرى
يمكنك استخدام الطرق التالية في VBA لتعيين قيمة الخلية في ورقة أخرى:
الطريقة الأولى: تعيين قيمة خلية في ورقة أخرى
Sub SetCellAnotherSheet()
Sun wks1 As Worksheet, wks2 As Worksheet
'specify sheets to use
Set wks1 = Sheets(" Sheet1 ")
Set wks2 = Sheets(" Sheet2 ")
'set cell value in Sheet2 equal to cell value in Sheet1
wks2.Range(" A2 ").Value = wks1.Range(" A2 ").Value
End Sub
سيقوم هذا الماكرو المحدد بتعيين قيمة الخلية A2 في الورقة2 لتكون مساوية لقيمة الخلية A2 في الورقة1 .
الطريقة الثانية: تعيين قيم خلايا متعددة في ورقة أخرى
Sub SetCellAnotherSheet()
Sun wks1 As Worksheet, wks2 As Worksheet
'specify sheets to use
Set wks1 = Sheets(" Sheet1 ")
Set wks2 = Sheets(" Sheet2 ")
'set cell range in Sheet2 equal to cell range in Sheet1
wks2.Range(" A2:A11 ").Value = wks1.Range(" A2:A11 ").Value
End Sub
سيقوم هذا الماكرو المحدد بتعيين قيمة كل خلية في النطاق A2:A11 في الورقة2 لتكون مساوية لقيمة كل خلية في النطاق A2:A11 في الورقة1 .
توضح الأمثلة التالية كيفية استخدام كل طريقة عمليًا.
مثال 1: قم بتعيين قيمة خلية في ورقة أخرى
لنفترض أن لدينا الورقة التالية التي تسمى Sheet1 والتي تحتوي على أسماء فرق كرة السلة المختلفة:
ولنفترض أن لدينا Sheet2 الذي يحتوي على صف رأس واحد فقط:
يمكننا إنشاء الماكرو التالي لتعيين قيمة الخلية A2 من الورقة2 لتكون مساوية لقيمة الخلية A2 من الورقة1 :
Sub SetCellAnotherSheet()
Sun wks1 As Worksheet, wks2 As Worksheet
'specify sheets to use
Set wks1 = Sheets(" Sheet1 ")
Set wks2 = Sheets(" Sheet2 ")
'set cell value in Sheet2 equal to cell value in Sheet1
wks2.Range(" A2 ").Value = wks1.Range(" A2 ").Value
End Sub
عندما نقوم بتشغيل هذا الماكرو، يمكننا أن نرى أن قيمة الخلية A2 من الورقة2 تم تعيينها الآن على “Mavs”، والتي تطابق قيمة الخلية A2 من الورقة1 :
المثال 2: تعيين قيم خلايا متعددة في ورقة أخرى
لنفترض أننا نريد تعيين قيمة كل خلية في النطاق A2:A11 من الورقة2 لتكون مساوية لكل خلية في النطاق A2:A11 من الورقة1 .
يمكننا إنشاء الماكرو التالي للقيام بذلك:
Sub SetCellAnotherSheet()
Sun wks1 As Worksheet, wks2 As Worksheet
'specify sheets to use
Set wks1 = Sheets(" Sheet1 ")
Set wks2 = Sheets(" Sheet2 ")
'set cell range in Sheet2 equal to cell range in Sheet1
wks2.Range(" A2:A11 ").Value = wks1.Range(" A2:A11 ").Value
End Sub
عندما نقوم بتشغيل هذا الماكرو، يمكننا أن نرى أن القيم الموجودة في النطاق A2:A11 من الورقة2 تم تعيينها الآن لتكون نفس القيم الموجودة في النطاق A2:A11 من الورقة1 :
مصادر إضافية
تشرح البرامج التعليمية التالية كيفية تنفيذ المهام الشائعة الأخرى في VBA:
VBA: كيفية العثور على آخر سطر مستخدم
فبا: كيفية حساب عدد الصفوف في النطاق
فبا: كيفية حساب عدد الأعمدة المستخدمة