لصق VBA (دليل خطوة بخطوة) | كيفية لصق البيانات باستخدام كود فبا؟

Excel VBA Paste

توجد ثلاث طرق مختلفة للصق بعض البيانات من مكان إلى آخر في ورقة عمل باستخدام VBA ، الطريقة الأولى هي إحالة القيم من خلية إلى خلية أخرى بشكل طبيعي باستخدام عامل التعيين ، وهناك طريقة أخرى باستخدام وظيفة اللصق والطريقة الثالثة باستخدام الوظيفة الخاصة السابقة.

يعد النسخ واللصق أكثر الأشياء شيوعًا التي نقوم بها يومًا بعد يوم في مكان العمل لدينا. في جدول البيانات العادي ، لا نحتاج إلى أي مقدمة خاصة له. في برمجة VBA ، من المهم جدًا فهم مفهوم طريقة "PASTE" لفهم البرنامج للتقدم إلى المستوى التالي.

افهم طريقة لصق VBA عن طريق تسجيل ماكرو

لبدء الإجراءات ، يتيح لك فهم كيفية عمل طريقة اللصق عن طريق تسجيل ماكرو بسيط. لقد أدخلت قيمة في الخلية A1 كما هو موضح في الصورة أدناه.

سأوضح لك الآن طريقة النسخ واللصق من الخلية A1 إلى A3. اتبع الخطوات أدناه لتسجيل ماكرو.

الخطوة 1: انقر فوق تسجيل ماكرو ضمن علامة التبويب مطور Excel.

الخطوة 2: في اللحظة التي تنقر فيها على تسجيل الماكرو ، سيظهر لك اسم الماكرو الافتراضي. اعتبارًا من الآن ، فقط انقر فوق "موافق".

الخطوة 3: في اللحظة التي تنقر فيها على موافق ، تبدأ في تسجيل الأنشطة التي تقوم بها. أول شيء عليك القيام به هو تحديد الخلية A1 لنسخها.

الخطوة 4: الآن اضغط على Ctrl + C لنسخ الخلية المحددة.

الخطوة 5: حدد الآن الخلية A3 حيث نحتاج إلى لصق القيمة المنسوخة.

الخطوة 6: الآن الصق بالضغط على Ctrl + V.

الخطوة 7: توقف الآن عن التسجيلات.

انتقل إلى محرر Visual Basic لمشاهدة التسجيلات. أدناه هو خارج التسجيل.

أول شيء قمنا به هنا هو "لقد اخترنا الخلية A1" ، لذا فإن الكود الخاص بهذا النشاط هو النطاق ("A1"). حدد

النشاط التالي هو أننا قمنا بنسخ الخلية A1. يمكنك أن تلاحظ هنا أن الكود ليس نطاقًا ("A1"). انسخ بدلاً من ذلك ، فإنه يقول "تحديد". نسخ ، هذا لأنه في اللحظة التي تحدد فيها الخلية تصبح إما خلية نشطة أو تحديدًا. لذلك يشار إليها باسم التحديد. نسخ .

النشاط الثالث هو أننا حددنا الخلية A1 للصقها ، وبالتالي فإن الرمز هو النطاق ("A3"). يختار

النشاط الأخير هو أننا قمنا بلصق القيمة في الخلية. هنا تقول Active Sheet لأنه في اللحظة التي تحدد فيها الخلية تصبح خلية نشطة للورقة النشطة. إذن الرمز هو "ActiveSheet.Paste"

هذه هي الطريقة التي تعمل بها طريقة اللصق في VBA.

معادلة

فيما يلي صيغة طريقة لصق VBA:

Expression.Paste (الوجهة ، الارتباط)

التعبير ليس سوى اسم ورقة العمل التي تريد لصقها. لفهم كائن ورقة العمل بشكل أفضل ، اقرأ مقالتنا حول "ورقة عمل VBA".

يمكنك إحالة ورقة العمل الأخرى حسب الاسم إذا كنت تريد لصقها في نفس ورقة العمل حيث نسختها ، يمكنك الرجوع إلى الورقة الحالية بواسطة "Active Sheet".

الوجهة: بعد ذكر اسم ورقة العمل ، نحتاج إلى الرجوع إلى عنوان الخلية الوجهة. على سبيل المثال ، إذا كنت تريد لصق ورقة العمل "بيانات البيع" وفي الخلية من A5 إلى A10 ، فإن نموذج التعليمات البرمجية أدناه.

أوراق العمل ("بيانات المبيعات"). النطاق ("A5: A10")

إذا تجاهلت هذه الحجة ، فسيتم التعامل مع الخلية النشطة على أنها الخلية الوجهة.

الارتباط: إذا كنت ترغب في إنشاء ارتباط إلى النطاق المنسوخ ، فيمكنك تقديم الوسيطة بصيغة TRUE أو FALSE.

أمثلة على طريقة اللصق في Excel VBA

فيما يلي أمثلة على طريقة لصق Excel VBA.

مثال # 1 - الصق في نفس ورقة عمل Excel

الآن دعنا نرى استخدام طريقة لصق VBA في نفس الورقة. على سبيل المثال عرض توضيحي ، لدي قيم قليلة من الخلية A1 إلى A5.

الآن أريد نسخ هذا ولصقه في C1 إلى C5. اتبع الخطوات أدناه لكتابة الرمز بنفسك.

الخطوة 1: قبل نشر أي شيء ، فإن أول شيء يتعين علينا القيام به هو نسخ نطاق البيانات. لذا انسخ النطاق من A1 إلى A5.

رمز:

 Sub Paste_Example1 () Range ("A1: A5"). نسخ End Sub 

الخطوة 2: بعد النسخ ، نحتاج إلى تحديد مكان اللصق. للقيام بذلك أولاً ، نحتاج إلى تحديد اسم ورقة العمل ، في هذه الحالة نظرًا لأننا نلصق في نفس الورقة ، استخدم كائن Active Sheet.

رمز:

 Sub Paste_Example1 () Range ("A1: A5"). انسخ ActiveSheet.Paste End Sub 

الخطوة 3: بعد تحديد طريقة اللصق ، نحتاج إلى تحديد الوجهة أيضًا. لذلك ستكون الوجهة هي النطاق C1 إلى C5.

رمز:

 Sub Paste_Example1 () Range ("A1: A5"). نسخ ActiveSheet.Paste Destination: = Range ("C1: C5") End Sub 

الخطوة 4: الآن لا أريد إنشاء أي رابط لطريقة لصق VBA ، لذلك أتجاهل الوسيطة التالية.

الآن قم بتشغيل هذا الرمز باستخدام المفتاح F5 أو يدويًا ، سيتم نسخه من A1 إلى A5 وسيتم لصقه في C1 إلى C5.

إذا نظرت إلى القيم من C1 إلى C5 ، فستكون هذه القيم كما هي في خلية من A1 إلى A5. لذا فإن طريقة لصق VBA هذه تنسخ كل شيء وتلصق كل شيء.

الآن سأستخدم وسيطة LINK لمعرفة كيفية عملها. لقد قدمت TRUE بالنسبة إلى وسيطة LINK.

رمز:

 Sub Paste_Example1 () Range ("A1: A5"). نسخ ActiveSheet.Paste Link: = True End Sub 

سيؤدي هذا إلى إنشاء ارتباط إلى الخلية من A1 إلى A5.

لذا فقد أنشأت رابطًا. أحد الأمور المفقودة هو تنسيق الخلايا هنا. لم يتم لصق أي أنماط تنسيق.

مثال # 2 - الصق في ورقة عمل Excel مختلفة

يتطلب النسخ من ورقة عمل إلى ورقة أخرى أسماء أوراق العمل. افترض أنك تريد نسخ البيانات من الورقة "First Sheet" وتريد لصقها في الورقة "Second Sheet" أدناه هي طريقة إحالة الأوراق.

رمز:

 Sub Paste_Example2 () Worksheets ("First Sheet"). Range ("A1: A5"). Copy Worksheets ("Second Sheet"). Paste Destination: = Range ("C1: C5") End Sub 

سيؤدي هذا إلى نسخ البيانات من A1 إلى A5 من اسم الورقة المسمى "First Name" ثم يتم لصقها في الورقة "Second Sheet" في النطاق C1 إلى C5.

يمكنك تنزيل قالب لصق VBA هنا: - قالب لصق VBA Excel


$config[zx-auto] not found$config[zx-overlay] not found