معجون VBA خاص | أفضل 5 طرق لاستخدام وظيفة لصق VBA وظيفة خاصة؟

على غرار ورقة العمل عندما نقوم بنسخ البيانات ولصقها في نطاق خلايا مختلف ، لدينا طريقة لصق خاصة تسمح لنا بلصق البيانات بنفسها أو فقط الصيغ أو القيم وبنفس الطريقة يمكننا استخدام لصق خاص في VBA باستخدام طريقة خاصية النطاق على النحو التالي النطاق. لصق خاص () مع توفير النوع الذي نريده بين قوسين.

لصق خاص في VBA

يخدم Paste Special in excel بعدة طرق في عملنا اليومي. باستخدام لصق خاص يمكننا القيام بالعديد من الأشياء أكثر من الأشياء المعتادة. النسخ واللصق موجود في كل مكان في عالم الكمبيوتر. لكن اللصق الخاص هو الشيء المتقدم في التفوق.

مثل لصق Excel العادي الخاص في VBA أيضًا ، فلدينا طريقة خاصة للصق البيانات المنسوخة. لا يعد نسخ الأشياء في برنامج Excel أمرًا غريبًا بالنسبة لمستخدمي برنامج Excel ، فهم يقومون بالنسخ واللصق ، وفي معظم الأحيان يستخدمون لصقًا خاصًا لخدمة غرضهم بطرق عديدة.

في لصق Excel العادي يتضمن العديد من الخيارات مثل لصق القيم فقط ولصق الصيغ وتنسيقات اللصق وما إلى ذلك ...

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

صيغة اللصق الخاص في VBA

يوجد أدناه صيغة لصق خاص في VBA

يتوفر Paste Special مع كائن نطاق VBA لأنه بعد نسخ البيانات ، سنقوم بلصقها في نطاق الخلايا ، لذلك تتوفر طريقة لصق خاصة مع كائن النطاق .

نوع اللصق: بعد نسخ البيانات ، كيف تريد لصقها. ما إذا كنت تريد لصق القيم والصيغ والتنسيقات والتحقق من الصحة وما إلى ذلك .. فيما يلي القائمة الكاملة للخيارات المتاحة ضمن " نوع اللصق".

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

  • [تخطي الفراغات]: إذا كنت تريد تخطي الفراغات ، فيمكنك اختيار صواب أو خطأ.
  • [تبديل]: إذا كنت تريد تبديل البيانات ، فيمكنك اختيار صواب أو خطأ.

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

فيما يلي أمثلة على لصق خاص في VBA.

يمكنك تنزيل قالب VBA Paste الخاص هنا - قالب VBA Paste الخاص

مثال # 1 - لصق القيم فقط باستخدام وظيفة VBA PasteSpecial

في المثال الأول ، سنقوم بلصق القيم فقط باستخدام لصق خاص. افترض أدناه البيانات التي لديك في اسم الورقة المسمى بيانات المبيعات.

الآن سنقوم بمهمة النسخ واللصق باستخدام عدة طرق لصق خاصة. اتبع الخطوات أدناه.

الخطوة 1: قم بإنشاء اسم ماكرو أولاً.

الخطوة 2: قم أولاً بنسخ النطاق A1 إلى D14 من اسم الورقة "بيانات المبيعات". لنسخ النطاق ، قم بتطبيق الرمز أدناه.

رمز: 

النطاق ("A1: D14"). نسخ

الخطوة 3: بعد نسخ البيانات ، سنقوم بلصق القيم من G1 إلى J14. قم أولاً بالإشارة إلى النطاق.

رمز:

النطاق ("G1: J14")

الخطوة 4: بعد تحديد النطاق الذي نحتاج إلى لصقه. لذلك ضع نقطة (.) وحدد طريقة لصق خاص.

رمز:

 Sub PasteSpecial_Example1 () Range ("A1: D14"). Copy Range ("G1: J14"). PasteSpecial End Sub 

الخطوة 5: من القائمة المنسدلة ، حدد الخيار "xlPasteValues".

رمز:

 Sub PasteSpecial_Example1 () Range ("A1: D14"). Copy Range ("G1: J14"). PasteSpecial xlPasteValues ​​End Sub 

الخطوة 6: الآن قم بتشغيل هذا الرمز باستخدام مفتاح F5 أو يدويًا وشاهد ما يحدث.

لذا نسخ الكود البيانات من A1 إلى D14 ولصقه من G1 إلى J14 كقيم.

وقد أنجزت مهمة الاختصار مفتاح التفوق في ورقة العمل ALT + E + S + V .

مثال # 2 - لصق الكل باستخدام VBA PasteSpecial

الآن سنرى ما سيحدث إذا قمنا بتنفيذ مهمة xlPasteAll.

رمز:

 Sub PasteSpecial_Example2 () Range ("A1: D14"). Copy Range ("G1: J14"). PasteSpecial xlPasteAll End Sub 

الآن إذا قمت بتشغيل هذا الرمز يدويًا من خلال خيار التشغيل أو بالضغط على المفتاح F5 ، فسنحصل على البيانات كما هي.

مثال # 3 - لصق التنسيقات باستخدام وظيفة VBA PasteSpecial

الآن سنرى كيفية لصق التنسيقات فقط. سوف يقوم الكود أدناه بالمهمة بالنسبة لنا.

رمز:

 Sub PasteSpecial_Example3 () Range ("A1: D14"). Copy Range ("G1: J14"). PasteSpecial xlPasteFormats End Sub 

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

مثال # 4 - لصق عرض العمود باستخدام لصق خاص VBA

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

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

رمز:

 Sub PasteSpecial_Example3 () Range ("A1: D14"). Copy Range ("G1: J14"). PasteSpecial xlPasteColumnWidths End Sub 

قم بتشغيل هذا الرمز وشاهد الفرق في عرض العمود.

الآن يمكننا أن نرى أن عرض عمود المبيعات قد تم زيادته إلى عرض عمود عمود النطاق المنسوخ.

المثال رقم 5 - انسخ البيانات من ورقة واحدة إلى ورقة أخرى باستخدام خيار لصق خاص لـ VBA

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

الخطوة 1: قبل أن نختار النطاق ، نحتاج إلى معرفة الورقة التي نحتاج إلى تحديد البيانات منها.

رمز:

 Sub PasteSpecial_Example5 () أوراق عمل ("بيانات المبيعات") End Sub 

الخطوة 2: بعد تحديد الورقة باسمها ، نحتاج إلى تحديد النطاق في تلك الورقة. نسخه.

رمز:

 Sub PasteSpecial_Example5 () أوراق عمل ("بيانات المبيعات"). النطاق ("A1: D14"). نسخ End Sub 

يقول الرمز أعلاه في اسم الورقة "بيانات المبيعات" انسخ النطاق ("A1: D14")

الخطوة 3: نظرًا لأننا نلصقها في ورقة مختلفة ، نحتاج إلى تحديد الورقة باسمها.

رمز:

 Sub PasteSpecial_Example5 () أوراق عمل ("بيانات المبيعات"). النطاق ("A1: D14"). نسخ أوراق العمل ("ورقة الشهر") End Sub 

الخطوة 4: الآن في ورقة الشهر ، حدد النطاق.

رمز:

 Sub PasteSpecial_Example5 () أوراق عمل ("بيانات المبيعات"). النطاق ("A1: D14"). نسخ أوراق العمل ("ورقة الشهر"). النطاق ("A1: D14") End Sub 

الخطوة 5: باستخدام Paste special ، سنقوم بلصق القيم والتنسيق.

رمز:

 Sub PasteSpecial_Example5 () أوراق عمل ("بيانات المبيعات"). النطاق ("A1: D14"). نسخ أوراق العمل ("ورقة الشهر"). النطاق ("A1: D14"). PasteSpecial xlPasteValuesAndNumberFormats End Sub 

الخطوة 6: نحن لا نقوم فقط بلصق القيم والتنسيق باستخدام VBA Paste Special ولكننا نقوم بلصقه كـ TRANSPOSE أيضًا.

رمز:

 Sub PasteSpecial_Example5 () أوراق عمل ("بيانات المبيعات"). النطاق ("A1: D14"). نسخ أوراق العمل ("ورقة الشهر"). النطاق ("A1: D14"). PasteSpecial xlPasteValuesAndNumberFormats ، Transpose: = True End Sub 

الآن قم بتشغيل هذا الكود وسيقوم بنسخ البيانات ونقلها إلى "صحيفة الشهر".

أشياء يجب تذكرها حول Excel VBA Paste وظيفة خاصة

  • إذا كنت تريد تخطي الفراغات ، فأنت بحاجة إلى إدخال الوسيطة على أنها TRUE افتراضيًا تأخذ FALSE.
  • إذا كنت تريد تبديل البيانات ، فنحن بحاجة إلى تحديد التحويل كـ TRUE.
  • يمكننا عمل معجون واحد خاص في كل مرة.

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