كيفية ملء القيم عشوائيًا من قائمة بيانات في Excel؟
اختيار القيم عشوائيًا من قائمة محددة مسبقًا في Excel هو مهمة شائعة ذات تطبيقات في تحليل البيانات، المحاكاة، التخصيص العشوائي، أخذ العينات، واختبار السيناريوهات، وغير ذلك. على سبيل المثال، قد ترغب في محاكاة السحب للفوز بجائزة، أو تخصيص حالات اختبار عشوائية لضمان الجودة، أو توزيع المهام بشكل عشوائي بين أعضاء الفريق. تحقيق هذا الأمر في Excel يمكن أن يجعل سير عملك أكثر كفاءة وأقل عرضة للأخطاء مقارنة بالاختيار اليدوي.
سترشدك هذه الدليل الشامل عبر طرق متعددة لتحقيق هذا الهدف، بدءًا من النهج القائم على الصيغ البسيطة المناسبة لجميع المستخدمين، وصولاً إلى الأتمتة المتقدمة باستخدام VBA، وحتى مع أدوات متخصصة وسهلة الاستخدام مثل Kutools لـ Excel. لكل طريقة نقاط قوتها وسيناريوهات الاستخدام المثالية الخاصة بها، والتي يتم تحليلها أدناه لمساعدتك في اختيار أفضل حل لاحتياجاتك.
ملء القيم عشوائيًا من قائمة بيانات باستخدام الصيغ
في هذا القسم، سنرشدك عبر عدة طرق عملية قائمة على الصيغ لملء القيم عشوائيًا من قائمة محددة. هذه الحلول لا تتطلب أي تثبيت إضافي ويمكن تنفيذها بسرعة عبر معظم الإصدارات الحديثة من Excel.
✅ الصيغة 1: وظائف INDEX + RANDBETWEEN
مزيج دالتي INDEX و RANDBETWEEN هو طريقة كلاسيكية ومتوافقة مع جميع الإصدارات لاختيار القيم عشوائيًا من قائمة. وهو مناسب لإنشاء قيم عشوائية واحدة أو متعددة بسرعة حيث تكون الاختيارات المكررة مقبولة، مثل في أخذ العينات العشوائية أو إنشاء بيانات افتراضية.
للاستخدام هذا الأسلوب، انسخ أو أدخل الصيغة التالية في خلية فارغة (على سبيل المثال، B2)، ثم اسحب مقبض التعبئة للأسفل لتعبئة العديد من القيم العشوائية حسب الحاجة. تذكر أنه نظرًا لأن الصيغة تتضمن دوال غير ثابتة (مثل RANDBETWEEN)، فإن نتيجتها ستتغير في كل مرة يتم فيها إعادة حساب الورقة.
=INDEX($A$2:$A$15, RANDBETWEEN(1, COUNTA($A$2:$A$15)))
- A2:A15: يمثل قائمة القيم التي تريد اختيارها منها عشوائيًا.
- COUNTA($A$2:$A$15): يقوم بحساب عدد العناصر في قائمتك ديناميكيًا، مما يضمن بقاء الصيغة قوية إذا تغير طول القائمة.
- RANDBETWEEN(1, n): يولد عددًا صحيحًا عشوائيًا بين 1 و n (عدد العناصر في القائمة).
- INDEX(range, number): يستخرج العنصر المقابل للموضع الذي تم اختياره عشوائيًا من قائمتك.
احتياطات: بما أن القيمة تُحدّث عند أي تغيير في ورقة العمل، إذا كنت تحتاج إلى أن تبقى النتائج دون تغيير، تأكد من نسخ الخلايا المملوءة ولصقها كقيم. أيضًا، هذه الاستراتيجية لا تستبعد التكرارات - إذا كان يجب أن تكون القيم فريدة، ضع في اعتبارك الأساليب الموصوفة في الأقسام التالية أو قم بالمعالجة اللاحقة.
✅ الصيغة 2: INDEX + RANDARRAY (Excel 365 / 2021+)
مزيج دالتي INDEX و RANDARRAY مناسب لمستخدمي Excel 365 و Excel 2021. يستفيد هذا الأسلوب من المصفوفات الديناميكية لإخراج دفعات من الاختيارات العشوائية دفعة واحدة، مما يسرع العمليات التي تتطلب الكثير من الاختيارات العشوائية في خطوة واحدة. يكون مفيدًا بشكل خاص عندما تحتاج إلى عدد معين من الاختيارات العشوائية بسرعة. ومع ذلك، يجدر التنبيه إلى أن هذه الطريقة، مثل الصيغة السابقة، لا تضمن عدم تكرار النتائج داخل الدفعة.
لاستخدام هذا الحل، أدخل الصيغة في خلية فارغة، مثل B2، واضغط Enter. سيقوم Excel تلقائيًا بـ”إغراق“ القيم العشوائية المنشأة في الصفوف اللاحقة. على سبيل المثال، تقوم الصيغة التالية بإخراج 5 قيم عشوائية من القائمة:
=INDEX(A2:A15, RANDARRAY(5, 1, 1, COUNTA(A2:A15), TRUE))
- A2:A15: القائمة المحددة للاختيار العشوائي.
- COUNTA(A2:A15): يحسب الإدخالات في القائمة المستهدفة.
- RANDARRAY(5,1,1, COUNTA(...), TRUE): يولد 5 أعداد صحيحة عشوائية بين 1 والموقع الأخير في القائمة، مما ينتج عنه مصفوفة عمودية (عمود واحد).
- INDEX(A2:A15, …): يربط كل رقم عشوائي بقيمة من قائمتك.
نصائح: إذا كنت بحاجة إلى عدد مختلف من القيم العشوائية، ما عليك سوى تعديل الرقم 5 في RANDARRAY(5,1, ...)
وفقًا لذلك. تذكر دائمًا لصق القيم إذا كنت بحاجة إلى أن تبقى النتائج ثابتة، حيث أن النتائج القائمة على الصيغة يتم تحديثها بتغيرات الورقة.
ملء القيم عشوائيًا من قائمة باستخدام VBA (الحل المتقدم والقابل للتخصيص)
إذا كنت بحاجة إلى أتمتة عمليات تخصيص القيم العشوائية على نطاق واسع، أو منع التكرارات، أو تحتاج إلى المزيد من التخصيص (مثل تطبيق منطق معقد أثناء الاختيار)، فإن أسلوب VBA (Visual Basic for Applications) يعد مثاليًا. يتيح لك VBA إنشاء اختيارات عشوائية فريدة حقًا، وتطبيق منطق توزيع مخصص، وتكرار المهام بتعليمات برمجية واحدة - مفيد للمحاكاة المتقدمة، التخصيص العشوائي الآلي، أو التعامل مع مجموعات بيانات كبيرة.
هذا الحل مناسب للمستخدمين المألوفين بالماكرو أو أولئك الذين يتطلعون إلى أتمتة سير عملهم في Excel.
1. افتح محرر VBA بالنقر فوق Developer > Visual Basic (أو اضغط Alt + F11)، والذي سيفتح نافذة Microsoft Visual Basic for Applications. بعد ذلك، انتقل إلى Insert > Module والصق الكود أدناه في نافذة الوحدة:
Sub RandomFillFromList_NoDuplicates()
Dim srcRange As Range
Dim destRange As Range
Dim srcValues As Variant
Dim destCount As Integer
Dim usedIndexes As Object
Dim i As Integer
Dim randIndex As Integer
On Error Resume Next
Set srcRange = Application.InputBox("Select source list", "KutoolsforExcel", Type:=8)
If srcRange Is Nothing Then Exit Sub
Set destRange = Application.InputBox("Select destination range (number of random values to fill)", "KutoolsforExcel", Type:=8)
If destRange Is Nothing Then Exit Sub
srcValues = Application.Transpose(srcRange.Value)
destCount = destRange.Cells.Count
Set usedIndexes = CreateObject("Scripting.Dictionary")
If UBound(srcValues) < destCount Then
MsgBox "Not enough unique items in the source list to fill destination without duplicates.", vbExclamation, "KutoolsforExcel"
Exit Sub
End If
Randomize
For i = 1 To destCount
Do
randIndex = Int(Rnd() * UBound(srcValues)) + 1
Loop While usedIndexes.Exists(randIndex)
usedIndexes(randIndex) = True
destRange.Cells(i).Value = srcValues(randIndex)
Next
End Sub
2. قم بتشغيل الماكرو بالنقر فوق الزر على شريط أدوات VBA. سيطلب منك الماكرو تحديد (أ) قائمة المصدر (نطاق القيم التي سيتم الاختيار منها)، و(ب) نطاق الإخراج (بالنسبة لعدد القيم العشوائية المستخرجة، اختر عددًا متساويًا من الخلايا). يضمن الكود عدم وجود قيم مكررة في الإخراج إذا كانت قائمة المصدر كبيرة بما فيه الكفاية. وإذا لم تكن كذلك، فإنه سيعرض تحذيرًا.
هذا الأسلوب باستخدام VBA يقدم المزايا والاعتبارات التالية:
- المميزات: يضمن اختيارات عشوائية وغير مكررة؛ يسمح بالتعامل مع قوائم وبatches كبيرة جدًا؛ يسهل أتمتة المهام المتكررة.
- العيوب: يتطلب ملفات Excel المزودة بالماكرو. إذا كانت مصنفاتك تمنع الماكرو، فقد لا يكون هذا الأسلوب مناسبًا. قد تحدث أخطاء إذا تجاوز عدد الوجهات عدد العناصر المصدر.
- تنبيهات الخطأ: سيبلغك الماكرو إذا لم يكن هناك ما يكفي من القيم الفريدة في قائمة المصدر لطلباتك.
- نصائح التخصيص: يمكنك تعديل الكود لاحقًا للسماح بالتكرارات عن طريق إزالة التحقق من التفرد، أو لتنفيذ منطق وزن أو تصفية لمواقف أكثر تخصصًا.
اختر واملأ القيم عشوائيًا من قائمة بيانات باستخدام Kutools لـ Excel (جميع الإصدارات)
Kutools لـ Excel يوفر حلًا سهل الوصول وتفاعليًا لاختيار وملء القيم عشوائيًا من قائمة. إنه مثالي للمستخدمين الذين يرغبون في التعامل مع التخصيصات العشوائية دون كتابة صيغ أو كود، أو أولئك الذين يحتاجون إلى معالجة الاختيارات بكميات كبيرة بأقل قدر من الإدخال اليدوي. يوفر Kutools أيضًا خيارات للتحكم في الإخراج، مثل عدد القيم المراد اختيارها، ويقوم بذلك من خلال واجهة حوار مباشرة.
بعد تثبيت Kutools لـ Excel، تابع كما يلي لاستخدام وظيفة الاختيار العشوائي المدمجة:
- حدد النطاق الذي يحتوي على القيم التي تريد اختيارها عشوائيًا.
- انقر Kutools > Range > Sort / Select Range Randomly. راجع لقطة الشاشة أدناه:
- في Sort / Select Range Randomly نافذة الحوار، انتقل إلى Select التبويب، وقم بما يلي:
- حدد عدد الخلايا للاختيار عشوائيًا.
- تأكد من اختيار خيار اختيار الخلايا العشوائية ضمن أنواع الاختيار.
- أخيرًا، انقر فوق الزر OK .
- سيتم تسليط الضوء على أو اختيار عدد الخلايا العشوائية المحددة. يمكنك بعد ذلك نسخ ولصق هذه الخلايا في مكان آخر حسب الحاجة.
بالإضافة إلى البساطة، يمنع أسلوب Kutools أيضًا الأخطاء الشائعة مع العشوائية اليدوية ولا يتطلب أي إلمام بصيغ Excel أو إعدادات الماكرو. إذا كنت ترغب في الحصول على قيم فريدة في اختيارك، تأكد من أن قائمة المصدر أكبر من عدد العناصر التي تخطط لاختيارها، وتحقق من الخيارات داخل الحوار لاختيار بدون تكرارات إذا كانت متاحة.
🔚الخاتمة
يمكن إدارة ملء القيم عشوائيًا من قائمة محددة مسبقًا في Excel بكفاءة باستخدام مجموعة متنوعة من التقنيات المناسبة لمستويات مختلفة من المعرفة والسيناريوهات:
- بالنسبة لجميع إصدارات Excel، الصيغة INDEX بالإضافة إلى RANDBETWEEN هي سريعة وموثوقة لتوليد اختيارات عشوائية، خاصة في القوائم حيث يُسمح بالتكرارات.
- إذا كان لديك Excel 365 أو 2021، توفر حلول RANDARRAY + INDEX اختيارًا ديناميكيًا أكثر يسرع العمليات عندما تكون هناك حاجة إلى العديد من المخرجات دفعة واحدة.
- بالنسبة للاحتياجات القابلة للتخصيص للغاية - مثل ضمان عدم وجود تكرارات، أتمتة التخصيصات العشوائية الكبيرة، أو التعامل مع منطق اختيار معقد - تقدم طريقة VBA أقصى درجات المرونة، على الرغم من أن المستخدمين يجب أن يكونوا على دراية بتشغيل الماكرو.
- إذا كنت تفضل أسلوبًا بلا كود وسهل الاستخدام، فإن Kutools لـ Excel يتيح لك إنشاء اختيارات عشوائية عبر واجهة رسومية، مما يجعله مناسبًا لكل من المبتدئين والمستخدمين المتقدمين الذين يحتاجون إلى نتائج سريعة.
من المهم أن تأخذ في الاعتبار ما إذا كنت بحاجة إلى اختيارات فريدة أو يمكنك السماح بالتكرارات، وعدد الاختيارات العشوائية التي تحتاجها، ومدى راحتك مع صيغ Excel أو الماكرو. قبل مشاركة أو حفظ النتائج العشوائية، استخدم ميزة اللصق كقيم لمنع إعادة الحساب العرضي. بالنسبة للمستخدمين المهتمين باستكشاف حلول Excel الإضافية، قم بزيارة قسم دروس Excel الخاص بنا لمزيد من الدروس والإرشادات العملية.
اقتراحات استكشاف الأخطاء وإصلاحها: قم بمراجعة نطاقات القوائم بدقة، وكن على دراية بإعادة الحساب مع الدوال غير الثابتة، وتأكد من أن إعدادات الأمان الخاصة بالماكرو تسمح بتنفيذ VBA عند استخدام الحلول القائمة على الكود. إذا حدثت أخطاء عند استخدام VBA (مثل حجم قائمة المصدر غير كافٍ)، فاتبع التعليمات وأعد النظر في نطاقاتك.
مقالات ذات صلة:
اختيار الخلايا عشوائيًا بناءً على معايير في Excel
إضافة لون خلفية/تعبئة للخلايا عشوائيًا في Excel
أفضل أدوات الإنتاجية لمكتب العمل
عزز مهاراتك في 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 يومًا — بدون تسجيل، بدون بطاقة ائتمان
- قيمة رائعة — وفر مقارنة بشراء الإضافات بشكل منفرد