فبا: كيفية تعيين قيمة خلية في ورقة أخرى


يمكنك استخدام الطرق التالية في 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: كيفية العثور على آخر سطر مستخدم
فبا: كيفية حساب عدد الصفوف في النطاق
فبا: كيفية حساب عدد الأعمدة المستخدمة

Add a Comment

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