كيف يمكن نقل صف معيّن تلقائيًا إلى ورقة جديدة عند تأشير خانة الاختيار في إكسل؟
في الاستخدام اليومي لإكسل، غالبًا ما تظهر سيناريوهات يحتاج فيها المستخدمون إلى نقل صفٍّ إلى ورقة عمل أخرى بناءً على ما إذا كانت خانة الاختيار مُشارَ إليها أم لا—مثل قوائم حالة المهام، ونماذج معالجة الطلبات، وقوائم مراجعة البيانات. ومن خلال أتمتة هذه العملية، يمكنك تعزيز كفاءة سير العمل والحفاظ على عرضٍ واضح ومنظم لبياناتك. ويعرض هذا المقال عدة حلول عملية لنقل صفٍّ معيّن تلقائيًا إلى ورقة جديدة بمجرد تأشير خانة الاختيار، لتلبية مختلف التفضيلات التشغيلية واحتياجات إدارة البيانات.
نقل الصف عند تأشير خانة الاختيار باستخدام كود VBA
إذا كنت ترغب في نقل صف معين تلقائيًا إلى ورقة عمل محددة بمجرد تأشير خانة الاختيار، فإن VBA (Visual Basic for Applications) في إكسل يوفّر حلاً قابلاً للتخصيص إلى حدٍ كبير—وهو خيارٌ مثالي خصوصًا للمستخدمين الذين يتعاملون مع مجموعات بيانات ضخمة أو يكررون هذه العملية بشكل متكرر.
1. افتح ورقة العمل التي تريد نقل الصفوف فيها بناءً على حالة خانة الاختيار. ثم انتقل إلىالمطور > إدراج > خانة اختيار (عنصر تحكم ActiveX)لإدراج خانة اختيار في ورقتك. يُمكّنك هذا العنصر من ربط الإجراءات بخانة الاختيار. انظر لقطة الشاشة:

2. انقر بزر الماوس الأيمن على لسان ورقة العمل في أسفل نافذة إكسل، ثم اخترعرض الكودمن القائمة السياقية لفتح نافذة الكود المقابلة للورقة. انظر لقطة الشاشة:

3. في نافذةمايكروسوفت فيجوال بيسك للتطبيقاتالتي تظهر، انسخ والصق كود VBA التالي في نافذة الكود:
كود VBA: نقل الصف إلى ورقة عمل محددة عند تأشير خانة الاختيار
Private Sub CheckBox1_Click()
Dim xRg As Range
Dim xAddress As String
On Error Resume Next
If CheckBox1.value Then
xAddress = Application.ActiveWindow.RangeSelection.Address
Set xRg = Application.InputBox("Please select the range row you will move(single cell):", "KuTools For Excel", xAddress, , , , , 8)
If xRg Is Nothing Then Exit Sub
Set xRg = xRg(1).EntireRow
xRg.Copy
ActiveWorkbook.Sheets("Sheet3").Range("A1").PasteSpecial xlPasteAllUsingSourceTheme
xRg.Clear
Application.CutCopyMode = False
End If
End Sub ملاحظات:في الكود، تشير Sheet3 وA1 إلى أن الصف المحدد سيتم نقله إلى الصف الأول من Sheet3. يُرجى تعديلها وفقًا لاحتياجاتك. على سبيل المثال، لنقل الصف إلىSheet2 بدءًا منB10، ما عليك سوى تغيير هذه القيم في الكود.
كن حذرًا عند تعديل الماكرو، إذ قد تؤدي التغييرات غير الصحيحة إلى أخطاء أو نقل بيانات غير مقصود. احفظ ملفك دائمًا قبل تشغيل كود VBA جديد، تحسبًا لحاجتك إلى التراجع عن التغييرات.
4. بعد إدخال الكود، اضغطAlt + Q على لوحة المفاتيح للخروج من محرر VBA والعودة إلى ورقة عمل إكسل.
5. قبل استخدام الوظيفة، تأكد من إيقافوضع التصميمفي لسانالمطور. يؤدي هذا الإجراء إلى تفعيل عنصر تحكم خانة الاختيار، مما يمكّنه من تشغيل ماكرو VBA كما هو مطلوب.

6. الآن، انقر على خانة الاختيار التي أضفتها. ستظهر نافذة حوارية باسمKutools لـ Excelتطلب منك تحديد الخلية الأولى من الصف أو الصف بأكمله الذي ترغب في نقله. بمجرد التحديد، انقر علىموافق. سيتم نقل الصف المحدد فورًا إلى ورقة العمل المحددة كما هو مُعرَّف في كود VBA الخاص بك. انظر لقطة الشاشة:

صيغة إكسل – وضع علامة وتصفية الصفوف للنقل
يمكن أن يساعدك الحل القائم على الصيغ في تحديد الصفوف التي يجب نقلها بسرعة عندما تكون خانة الاختيار المرتبطة بها مُشارَ إليها. وهو عملي بشكل خاص في جداول إدخال البيانات حيث تكون خانات الاختيار مرتبطة بأعمدة مساعدة. بعد ذلك، يمكن تصفية هذه الصفوف المعلّمة ولصقها يدويًا في ورقة أخرى. ولا يتطلب هذا الأسلوب استخدام VBA، وهو مثالي عندما لا تكون الأتمتة الصارمة مطلوبة أو كان استخدام الماكرو مقيدًا.
بافتراض أن لديك خانات اختيار في النطاق B2 إلى B100 مرتبطة بالخلايا C2 إلى C100، وكانت صفوف بياناتك في النطاق A2:B100، فيمكنك استخدام عمود مساعد (مثل العمود D) بصيغة لوضع علامة على الصفوف المشارة:
1. في الخلية D2، أدخل الصيغة التالية:
=IF(C2=TRUE, "Move", "") 2. اضغط Enter لتأكيد الصيغة، ثم انسخها لأسفل لتغطية جميع صفوف البيانات (مثلًا من D2 إلى D100)—ويمكنك فعل ذلك ببساطة بسحب مقبض الملء أو بالنقر المزدوج عليه في الزاوية السفلية اليمنى للخلية.
3. الآن، افلتر العمود D لعرض القيمة «Move» فقط، ثم حدد الصفوف المرئية (المُرشَّحة) وانسخها إلى ورقة العمل الهدف باستخدام Ctrl+C وCtrl+V.
تلميح:إذا لم تكن خانات الاختيار الخاصة بك مرتبطة بقيم الخلايا، فانقر بزر الماوس الأيمن على كل خانة واختر خاصيةربط الخلية، بحيث يؤدي التأشير أو إلغاء التأشير إلى تحديث الخلية بالقيمة TRUE أو FALSE. وسيمكّنك ذلك من تشغيل الصيغة كما هو مطلوب.
المزايا: لا حاجة إلى الماكرو، ويعمل بسلاسة في الملفات المشتركة.العيوب:تتطلب بعض الخطوات اليدوية لنقل الصفوف المعلَّمة.
مقالات ذات صلة:
- كيف يمكن نقل الصف بأكمله تلقائيًا إلى ورقة عمل أخرى في إكسل بناءً على قيمة معيّنة في خلية؟
- كيف يمكن نقل الصف بأكمله إلى أسفل ورقة العمل الحالية بناءً على قيمة معيّنة في خلية بإكسل؟
أفضل أدوات الإنتاجية لمكتبتك
عزِّز مهاراتك في Excel باستخدام Kutools لـ Excel، وعايش الكفاءة كما لم تفعل من قبل.يقدّم Kutools لـ Excel أكثر من 300 ميزة متقدمة لتعزيز الإنتاجية ووقت الحفظ.انقر هنا للحصول على الميزة التي تحتاجها أكثر من غيرها...
يجلب Office Tab واجهة ذات علامات تبويب إلى Office، ويجعل عملك أسهل بكثير
- تمكّن من التحرير والقراءة باستخدام علامات التبويب في Word وExcel وPowerPoint، وPublisher وAccess وVisio وProject.
- افتح وأنشئ مستندات متعددة في علامات تبويب جديدة داخل النافذة نفسها، بدلاً من فتح نوافذ جديدة.
- يزيد إنتاجيتك بنسبة 50% ويوفّر لك مئات نقرات الفأرة كل يوم!
جميع الإضافات من Kutools في برنامج تثبيت واحد!
Kutools for Office حزمةٌ تحتوي على إضافاتٍ مخصصة لتطبيقات Excel وWord وOutlook وPowerPoint، إلى جانب Office Tab Pro، مما يجعلها الخيار المثالي للفِرق التي تعمل عبر تطبيقات Office.
- حزمة شاملة واحدة— إضافات Excel وWord وOutlook وPowerPoint بالإضافة إلى Office Tab Pro
- برنامج تثبيت واحد، ترخيص واحد— الإعداد خلال دقائق (جاهز لـ MSI)
- يعمل بشكل أفضل معًا— إنتاجية ميسَّرة عبر تطبيقات Office
- تجربة مجانية لمدة 30 يومًا بكامل الميزات— بدون تسجيل، بدون بطاقة ائتمان
- أفضل قيمة— وفِّر مقارنةً بشراء الإضافات بشكل منفصل