كيفية توليد تواريخ عشوائية في إكسل (مع أمثلة)

دليل أكاديمي شامل يشرح كيفية توليد تواريخ عشوائية في إكسل باستخدام الدوال الرياضية وتنسيق الأرقام التسلسلية مع أمثلة تطبيقية للمحاكاة والبحث.

Mohammed looti أكاديمي وباحث متخصص في علم النفس
تاريخ النشر
تمت المراجعة العلمية · د. مروة عبد العظيم · 21 أكتوبر، 2026
مراجعة وتدقيق علمي معتمد تاريخ التدقيق: 21 أكتوبر، 2026
د. مروة عبد العظيم دكتوراه في علم النفس
عضو هيئة التدريس • جامعة كربلاء
معايير التدقيق والاعتماد السريري

يخضع هذا المحتوى لمعايير ضبط الجودة والتدقيق العلمي والأكاديمي الصارمة في شبكة علم النفس العربي، لضمان صحة المعلومات ودقتها السريرية ومطابقتها لأحدث الأدلة والبراهين الصادرة عن الجمعيات النفسية والطبية المعتمدة (APA / WHO).

يشكّل التعامل مع البيانات الزمنية وتوليدها ركيزة جوهرية في نماذج المحاكاة الحاسوبية والبحوث التجريبية والتحليلات الإحصائية المتقدمة. في بيئات الأعمال والدراسات الأكاديمية المعاصرة، يواجه المحللون والباحثون تحدياً مستمراً يتمثل في الحاجة إلى إنشاء بيانات اختبارية وتوليد عينات عشوائية تحاكي الواقع دون المساس بخصوصية البيانات الحقيقية أو الوقوع في فخ التحيزات المنهجية الناتجة عن التدخل البشري في اختيار الفترات الزمنية. ومن هنا تبرز أهمية برنامج مايكروسوفت إكسل (Microsoft Excel) بوصفه أداة حسابية واسعة الانتشار، تمتلك بنية رياضية متينة وقدرات متطورة تتيح للمستخدمين توليد تواريخ وأوقات عشوائية بكفاءة متناهية، سواء كان الهدف محاكاة سلوك المستهلكين، أو جدولة مواعيد التجارب السريرية، أو اختبار متانة النظم وقواعد البيانات البرمجية.

إن فهم الآليات العميقة التي يعتمدها برنامج إكسل لتوليد التواريخ العشوائية يتجاوز مجرد حفظ صيغة رياضية مقتضبة؛ إذ يتطلب إدراكاً حقيقياً للبنية الرقمية التي ترتكز عليها التواريخ في النظم الحاسوبية، والتعرف على الفروق الدقيقة بين الدوال الرياضية المتطايرة (Volatile Functions) والبيانات الثابتة، واستيعاب المفاهيم الاحتمالية المرتبطة بالتوزيع المنتظم المنفصل (Discrete Uniform Distribution). وتعد قدرة الباحث أو المحلل على التحكم الدقيق في المتغيرات الزمنية—مثل استبعاد عطلات نهاية الأسبوع والإجازات الرسمية، وتوليد أجزاء الوقت من ساعات ودقائق وثوانٍ، وتوظيف دوال المصفوفات الديناميكية الحديثة—من المهارات التقنية التي تضمن سلامة النماذج الرياضية وصدق مخرجاتها التجريبية.

يقدم هذا الدليل المرجعي الشامل إطاراً علمياً وتطبيقياً متكاملاً يشرح كيفية توليد التواريخ العشوائية داخل بيئة إكسل بدقة متناهية. وسنتناول فيه بالتحليل الرياضي والتطبيقي المفصل الأسس النظرية لنظام الترقيم التسلسلي، مروراً بالدوال الكلاسيكية مثل RANDBETWEEN والدوال المتقدمة مثل WORKDAY.INTL وصولاً إلى قدرات الحوسبة المجهرية الحديثة عبر دالة RANDARRAY في بيئة Microsoft 365، مع تقديم حلول منهجية للمشكلات التقنية الشائعة وضمان أعلى معايير التوثيق الأكاديمي وضبط الجودة الإحصائية.

1. مقدمة في بنية التواريخ داخل برنامج إكسل والمفاهيم الأساسية

1.1 النظام التسلسلي للأرقام والتواريخ في إكسل

يرتكز برنامج إكسل في تعامله مع التواريخ على منطق رياضي صارم يُعرف بنظام الترقيم التسلسلي (Serial Number System)، وتحديداً نظام تاريخ 1900 الافتراضي (1900 Date System). بموجب هذا النظام، لا يتعامل المعالج الحسابي لإكسل مع التواريخ كنصوص مجردة مكونة من أيام وشهور وسنوات، بل ينظر إليها باعتبارها أرقاماً صحيحة متسلسلة تبدأ من نقطة أساس معيارية هي تاريخ 1 يناير 1900، والذي خُصص له الرقم التسلسلي 1. وبالتالي، فإن كل يوم تالٍ يمثل زيادة عددية مقدارها واحد صحيح؛ فعلى سبيل المثال، يُمثل تاريخ 2 يناير 1900 بالرقم 2، في حين يُمثل تاريخ 1 يناير 2024 بالرقم التسلسلي 45292، وهو ما يعكس بدقة عدد الأيام التراكمية المنقضية منذ نقطة الأساس المعتمدة في النظام الحسابي.

يمتد هذا الإطار الرياضي ليشمل الوقت أيضاً، حيث يعتمد إكسل على الكسور العشرية لتمثيل الأجزاء الزمنية لليوم الواحد. وبما أن اليوم يحتوي على 24 ساعة، فإن كل ساعة تُعادل جزءاً مقداره واحد مقسوماً على 24 (أي ما يعادل تقريباً 0.041667)، بينما تمثل الدقيقة الواحدة جزءاً مقداره واحد مقسوماً على 1440 من اليوم، وتُمثل الثانية الواحدة جزءاً من 86400. وعليه، فإن القيمة العددية 45292.5 تعبر رياضياً عن ظهر يوم 1 يناير 2024 (الساعة الثانية عشرة ظهراً تماماً). إن هذه العلاقة التبادلية بين الترقيم العددي المطلق والتمثيل البصري للتقويمات تسمح لإكسل بإجراء العمليات الحسابية من جمع وطرح ومقارنة بأقصى كفاءة حاسوبية ممكنة، إذ تتحول العمليات الزمنية المعقدة إلى عمليات جمع وطرح حسابية مباشرة على الأرقام الثنائية المخزنة في الذاكرة العشوائية.

تكتسب هذه البنية التحتية أهمية استثنائية عند معالجة البيانات الضخمة (Big Data) وتدفقات القياس الكبيرة في مراكز البحوث. فلو كان البرنامج يضطر إلى تفكيك السلاسل النصية واستخراج الأيام والشهور والسنوات عند كل عملية فرز أو مطابقة أو توليد عشوائي، لارتفع استهلاك موارد وحدة المعالجة المركزية (CPU) بمعدلات هائلة. إن حفظ التواريخ كأرقام صحيحة يتيح خوارزميات ترتيب وبحث فائقة السرعة، ويجعل من مسألة توليد تاريخ عشوائي مجرد عملية توليد لرقم صحيح عشوائي يقع بين قيمتين محددتين، مما يضمن تدفقاً سلساً للمعلومات وسرعة استجابة متميزة للنماذج الإحصائية المعقدة.

1.2 أهمية توليد التواريخ العشوائية في البحوث والنمذجة الرياضية

يمثل توليد التواريخ العشوائية آلية منهجية بالغة الأهمية في مجال النمذجة الرياضية وتصميم التجارب البحثية المتطورة. في سياق الأبحاث العلمية والتطبيقية، يُعد بناء مجموعات البيانات الاصطناعية (Synthetic Datasets) وسيلة معتمدة لتدريب واختبار الخوارزميات والنماذج الإحصائية دون المساس بالبيانات الحساسة أو خرق المعايير الأخلاقية لحماية الخصوصية. فعلى سبيل المثال، يحتاج مطورو النظم الطبية ومحللو بيانات الرعاية الصحية إلى تدفقات بيانية تحاكي تواريخ دخول المرضى وخروجهم ومواعيد الفحوصات المخبرية للتأكد من قدرة النظم على التعامل مع الحالات الطارئة، وتوليد هذه التواريخ عشوائياً يوفر بيئة اختبارية واقعية دون الحاجة إلى كشف السجلات الحقيقية للأفراد.

علاوة على ذلك، تلعب العينات الزمنية العشوائية دوراً حيوياً في ضبط التجارب السلوكية والنفسية ومشاريع بحوث العمليات. ففي دراسات قياس الأثر والتقييم الطولي (Longitudinal Studies)، قد يؤدي اعتماد تواريخ قياس منتظمة أو متوقعة إلى حدوث انحيازات قياسية؛ مثل تحيز التوقع أو التكيف مع أدوات الاختبار من قِبل المشاركين. ومن خلال سحب تواريخ عشوائية لإجراء الملاحظات الميدانية أو إرسال الاستبانات اللحظية، يضمن الباحث كسر النمطية وتحقيق التمثيل العشوائي الحقيقي عبر النطاق الزمني للدراسة، مما يرفع من درجات الصدق الداخلي والخارجي للنتائج الإحصائية المستخلصة.

كما تُعد المحاكاة الزمنية واختبارات الإجهاد (Stress Testing) ركناً أساسياً في بيئات الأعمال والاقتصاد القياسي وإدارة سلاسل الإمداد. يحتاج المحللون إلى تقييم سلوك النماذج المالية والتشغيلية في ظل سيناريوهات تدفق مالي عشوائي أو فترات وصول غير منتظمة للشحنات والمواد الخام. إن إدخال تواريخ عشوائية ضمن نطاقات متباينة يتيح للمؤسسات قياس مرونة سلاسل الإمداد واختبار استجابة السيولة النقدية للأزمات الافتراضية، فضلاً عن التحقق من خلو البرمجيات المحاسبية من أي ثغرات برمجية قد تظهر عند معالجة التواريخ المتداخلة أو السنوات الكبيسة.

1.3 الفرق بين الدوال الديناميكية المتطايرة والبيانات الثابتة

من الضروري لأي باحث أو محلل بيانات أن يدرك المفهوم الهيكلي للدوال المتطايرة (Volatile Functions) في إكسل. تُعرّف الدوال المتطايرة—مثل دالتي RAND و RANDBETWEEN—بأنها دوال تقوم بإعادة حساب قيمتها وتحديث مخرجاتها تلقائياً مع كل عملية تغيير أو إدخال تطرأ على أي خلية داخل مصنف العمل بالكامل، بل وحتى عند فتح المصنف أو حفظه أو الضغط على مفتاح F9. يرجع ذلك إلى إدراج إكسل لهذه الدوال في شجرة التبعية المباشرة التي يتم تحفيزها بصورة دائمة، بصرف النظر عما إذا كان التعديل الواقع في ورقة العمل يرتبط بالخلية الحاوية للدالة أم لا.

يترتب على هذا السلوك التلقائي أثر مزدوج؛ فمن ناحية، يتيح السلوك المتطاير محاكاة ديناميكية حية تمكن المستخدم من مراقبة استجابة النماذج لبيانات تتغير باستمرار. لكن من ناحية أخرى، يؤدي وجود مئات أو آلاف الدوال المتطايرة داخل مصنفات العمل الضخمة إلى استنزاف مفرط لموارد المعالج وبطء ملحوظ في إعادة الحساب المتكرر، مما قد يُعطل العمليات التحليلية ويسبب تأخيراً غير مبرر في معالجة الملفات الكبيرة. بالإضافة إلى ذلك، فإن تغير البيانات المستمر يُفقد العينة البحثية استقرارها المنهجي، إذ تتغير مصفوفة التواريخ المولدة مع كل ضغطة زر، مما يجعل تكرار التجربة ومراجعة النتائج أمراً بالغ الصعوبة.

لذلك، تتطلب النمذجة المنهجية إجراء مفاضلة واعية بين الاحتفاظ بالصيغة التوليدية الديناميكية خلال مراحل بناء النموذج واستكشاف السيناريوهات، وبين تجميد المخرجات وتحويلها إلى قيم إحصائية ثابتة (Static Values) بمجرد الانتهاء من مرحلة توليد العينة. يوفر التجميد حماية للبيانات المستخرجة من التعديل العرضي، ويقلل العبء الحسابي الواقع على البرنامج، ويوثق الحالة اللحظية للبيانات بما يتوافق مع معايير الضبط المنهجي في إعداد التقارير والبحوث العلمية.

2. الدالة الأساسية: استخدام دالة RANDBETWEEN لتوليد التواريخ العشوائية

2.1 البنية النحوية والرياضية لدالة RANDBETWEEN

تُعد دالة RANDBETWEEN الأداة الكلاسيكية الأكثر موثوقية في برنامج إكسل لتوليد قيم عشوائية تقع ضمن نطاق محدد. تم تصنيف هذه الدالة برمجياً لتعود بأرقام صحيحة تتبع توزيعاً احتمالياً منتظماً منفصلاً (Discrete Uniform Distribution)، وتأخذ الدالة البنية النحوية المعيارية التالية:

=RANDBETWEEN(bottom, top)

تتطلب هذه البنية وسيطين إلزاميّين: الوسيط الأول هو الحد الأدنى العددي (bottom)، والوسيط الثاني هو الحد الأعلى العددي (top). يشترط المنطق البرمجي للدالة أن تكون المدخلات عبارة عن قيم عددية صحيحة، مع ضرورة أن تكون قيمة الحد الأدنى أصغر من قيمة الحد الأعلى أو مساوية لها تماماً. وفي حال كانت المدخلات تتضمن كسوراً عشرية، فإن إكسل يقوم تلقائياً باقتطاع هذه الكسور والتركيز على الجزء الصحيح لتحديد نطاق الاحتمالات المتاحة.

من الناحية الرياضية، تقوم الدالة باختيار أي عدد صحيح يقع في المجال المغلق [bottom, top] باحتمال متساوٍ تماماً مقداره:

$$P(X = k) = \frac{1}{\text{top} – \text{bottom} + 1}$$

حيث يمثل $k$ أي تاريخ (كرقم تسلسلي) محصور بين الطرفين. وبما أن التواريخ داخل إكسل ما هي إلا أرقام تسلسلية صحيحة كما أسلفنا، فإن تمرير تاريخ بداية وتاريخ نهاية إلى وسائط هذه الدالة ينسجم بصورة تامة مع شروطها الهيكلية؛ حيث يقوم إكسل بالتعامل مع تاريخ البداية كرقم تسلسلي أدنى ومع تاريخ النهاية كرقم تسلسلي أقصى، ومن ثم يولد أرقاماً تسلسلية تقع بدقة متناهية بين هذين التاريخين دون أي إخلال بالتوازن الإحصائي.

2.2 تطبيق الصيغة وتثبيت مراجع الخلايا باستخدام علامة الدولار ($)

عند بناء النماذج التحليلية المتقدمة، يُوصى منهجياً بعدم إدخال التواريخ كأرقام مجردة داخل الصيغة الحسابية مباشرة، بل يجب إسنادها إلى خلايا مرجعية منفصلة تُحدد بوضوح في مساحة مخصصة لمعايير الإدخال (Input Parameters). تمنح هذه الممارسة النموذج مرونة عالية، حيث يمكن تعديل النطاق الزمني بالكامل بمجرد تغيير محتوى خليتي البداية والنهاية دون الحاجة إلى تعديل مئات الصيغ الحسابية في جداول البيانات.

إذا افترضنا أن تاريخ بداية الدراسة يقع في الخلية A2 وتاريخ نهايتها يقع في الخلية B2، فإن الصيغة التي يجب كتابتها في عمود المخرجات تتخذ الشكل التالي:

=RANDBETWEEN($A$2, $B$2)

يكتسب إدراج علامة الدولار ($) قبل اسم العمود ورقم الصف أهمية معمارية محورية؛ إذ يمثل هذا الإجراء تثبيتاً مطلقاً (Absolute Reference) للمراجع. عند سحب هذه الصيغة وتكرارها عبر آلاف الصفوف لتوليد عينة بحثية ضخمة، يضمن التثبيت المطلق بقاء إشارة المعادلة متجهة دائماً وبدقة نحو الخليتين المرجعيتين A2 و B2، ويمنع الانزياح التدريجي الذي يحدث تلقائياً عند استخدام المراجع النسبية (Relative References)، والذي قد يؤدي في حال غياب التثبيت إلى الإشارة لخلايا فارغة أو نصوص، مما يُنتج أخطاء رياضية متسلسلة تعطل مصفوفة البيانات بالكامل.

2.3 تفسير المخرجات الرقمية الافتراضية الناتجة عن العملية

من الملاحظات التي قد تُربك المستخدم المبتدئ عند تطبيق دالة RANDBETWEEN على التواريخ لأول مرة، ظهور المخرجات الأولية في صورة أرقام صحيحة خالية من أي فواصل زمنية أو أسماء شهور، مثل ظهور الرقم 44927 بدلاً من تاريخ واضح مثل 01/01/2023. إن هذا المخرج الرقمي لا يمثل خطأ برمجياً على الإطلاق، بل يعكس على النقيض تماماً التطبيق الرياضي السليم لنظام الترقيم التسلسلي في إكسل.

إن ظهور هذه القيمة العددية يعود إلى أن الخلية المستهدفة بالتوليد تكون مضبوطة افتراضياً على التنسيق الرقمي العام (General Format). في هذه الحالة، يعرض إكسل القيمة الخام التي تم توليدها بواسطة الدالة، وهي تمثل العدد التراكمي للأيام منذ اليوم الأول من عام 1900. وبالتالي، يجب على الباحث أن يطمئن إلى سلامة عمل المعادلة الرياضية؛ فالرقم الظاهر هو القيمة الصحيحة تاريخياً، وكل ما تقتضيه الخطوة التالية هو تعديل قناع العرض البصري (Display Mask) الخاص بالخلية لتحويل ذلك الرقم التسلسلي إلى هيئة تقويمية مألوفة للمتلقي، دون أي تغيير في القيمة الحسابية الجوهرية للخلية.

3. دليل تطبيقي خطوة بخطوة: بناء جدول توليد التواريخ عملياً

3.1 إعداد نطاق زمني محدد وتدوينه في الخلايا المرجعية

تبدأ الخطوة الأولى في بناء مصفوفة توليد التواريخ العشوائية بالتحديد الدقيق للحدود الزمنية للدراسة أو المشروع. يجب تخصيص خلايا واضحة ومستقلة، مثل الخلية F1 لتاريخ البداية (Start Date) والخلية F2 لتاريخ النهاية (End Date)، وتوثيق هذه الخلايا بعناوين واضحة لمنع اللبس المفاهيمي. يجب توخي الحذر الشديد أثناء إدخال هذه التواريخ لضمان توافقها التام مع الإعدادات الإقليمية لنظام التشغيل؛ فإذا كان النظام مضبوطاً على النسق الأمريكي، يجب إدخال التاريخ بنمط (الشهر/اليوم/السنة)، في حين يُدخل بنمط (اليوم/الشهر/السنة) في النظم البريطانية ومعظم النظم الإقليمية العربية.

للتأكد القاطع من أن إكسل قد تعرّف على المدخلات المرجعية كتواريخ صحيحة ولم يعتبرها سلاسل نصية (Text Strings)، يمكن مراقبة محاذاة الخلية تلقائياً؛ حيث يُحاذي إكسل الأرقام والتواريخ إلى جهة اليمين افتراضياً (أو اليسار في الواجهات الإنجليزية)، في حين تُحاذى النصوص إلى الجهة المقابلة. كما يمكن تطبيق دالة ISNUMBER على الخلية المرجعية للتأكد من أنها تعود بالقيمة المنطقية TRUE، وهو ما يؤكد صلاحية هذه التواريخ للاندماج في الحسابات الرياضية العشوائية دون التسبب في أخطاء نوعية.

Excel generate random date between date range
Excel generate random date between date range

3.2 إدخال الصيغة وسحبها لتعبئة مجموعات البيانات الكبيرة

بعد إعداد الخلايا المرجعية والتأكد من سلامتها الرياضية، ينتقل الباحث إلى الخلية الأولى في العمود المخصص للمخرجات العشوائية وليكن العمود C ابتداءً من الخلية C2. يتم تدوين الصيغة المرجعية المثبتة:

=RANDBETWEEN($F$1, $F$2)

بمجرد الضغط على مفتاح Enter، ستنتج الخلية الأولى تاريخاً عشوائياً (في صورة رقم تسلسلي مبدئياً). لتوسيع نطاق هذه العملية لتشمل آلاف الملاحظات أو السجلات في ثوانٍ معدودة، يُوضع مؤشر الفأرة على الزاوية السفلية اليسرى للخلية (أو اليمنى حسب اتجاه الواجهة) حتى يتحول المؤشر إلى علامة تقاطع سوداء صغيرة تُعرف باسم مقبض التعبئة (Fill Handle). يؤدي النقر المزدوج السريع على هذا المقبض إلى تعبئة العمود تلقائياً للأسفل بمحاذاة البيانات المجاورة، أو يمكن سحب المقبض يدوياً لتغطية النطاق المطلوب بدقة، مما يتيح توليد عينات زمنية كبرى تتألف من عشرات الآلاف من السجلات بكفاءة وسرعة فائقة.

3.3 التحقق المبدئي من النطاق والتوزيع الإحصائي للقيم

تقتضي المعايير الأكاديمية والمنهجية عدم الاكتفاء بمظهر البيانات الخارجي، بل يجب إجراء فحص تدقيقي للتحقق من سلامة العينة المولدة ومطابقتها للمحددات الإحصائية المفترضة. يمكن في هذا السياق توظيف دالتي MIN و MAX في خلايا جانبية مستقلة لفحص القيم الدنيا والقصوى المحققة داخل العمود المولد عبر الصيغتين:

=MIN(C2:C10000)
=MAX(C2:C10000)

يتيح هذا الإجراء التأكد من أن جميع التواريخ المولدة تقع فعلياً داخل المجال الزمني المحدد دون وجود أي قيمة شاذة تتجاوز تاريخ النهاية أو تسبق تاريخ البداية. كما يُفضل في البحوث الميدانية توليد جدول توزيع تكراري مبسط باستخدام دالة COUNTIF أو أدوات التحليل الإحصائي للتحقق من أن التواريخ موزعة بانتظام عبر الشهور والأرباع السنوية المختلفة للدراسة، مما يضمن غياب أي تحيز مكاني أو تركز غير مبرر في فترات زمنية معينة، وهو ما يعزز الثقة في سلامة التوليد الخوارزمي للأرقام العشوائية في إكسل.

4. تحويل الأرقام التسلسلية إلى تنسيق التاريخ المقروء (Number Formatting)

4.1 استخدام القوائم السريعة لتنسيق الأرقام في واجهة إكسل

يمثل التنسيق الرقمي (Number Formatting) في إكسل فصلاً جوهرياً بين القيمة الرياضية الأساسية المخزنة في الذاكرة والقناع البصري المعروض للمستخدم. لتحويل الأرقام التسلسلية الناتجة إلى تواريخ مقروءة بأسلوب سريع، يتم أولاً تظليل النطاق المولد بالكامل، ثم التوجه إلى شريط الأدوات الرئيسي (Home Tab)، وتحديداً مجموعة الأوامر الخاصة بالأرقام (Number Group).

تتيح القائمة المنسدلة للتنسيقات خيارين أساسيين للتواريخ: خيار التاريخ القصير (Short Date) الذي يعرض البيانات بنمط رقمي مجرد مثل (DD/MM/YYYY) أو (MM/DD/YYYY)، وخيار التاريخ الطويل (Long Date) الذي يُظهر اليوم نصياً مقترناً باسم الشهر والسنة مثل (الأربعاء، 15 مارس 2023). يُعد التاريخ القصير خياراً مثالياً للجداول المدمجة وقواعد البيانات التي تستهدف توفير مساحة العرض وسرعة القراءة، في حين يُفضل التاريخ الطويل عند إعداد التقارير السردية والملخصات التنفيذية التي تتطلب توضيحاً لا لبس فيه لليوم المقابل لكل تاريخ عشوائي تم توليده.

4.2 التنسيق المخصص لتلبية المعايير الأكاديمية والبحثية

في كثير من السياقات البحثية والأكاديمية، يتطلب التوثيق المنهجي الامتثال لمعايير دولية صارمة مثل المعيار الدولي ISO 8601 لتبادل البيانات وتدوين التواريخ (YYYY-MM-DD)، وهو التنسيق الذي يقضي على أي التباس محتمل بين ترتيب الأيام والشهور بغض النظر عن لغة القارئ أو بيئته الجغرافية. لتطبيق هذا التنسيق أو غيره من التنسيقات المتقدمة، يتم تظليل البيانات والضغط على اختصار لوحة المفاتيح الشهير Ctrl + 1 لفتح نافذة تنسيق الخلايا (Format Cells).

من القائمة الجانبية لنافذة التنسيق، يتم اختيار فئة مخصص (Custom)، ثم تدوين الرموز القياسية في حقل النوع (Type). تتضمن الرموز الأساسية ما يلي:

  • yyyy: تمثيل السنة بأربعة أرقام كاملة (مثال: 2024).
  • mm: تمثيل الشهر برقمين مع صفر بادئ (01 إلى 12).
  • mmm: اختصار اسم الشهر بثلاثة أحرف (مثال: Jan أو يناير).
  • mmmm: كتابة اسم الشهر كاملاً.
  • dd: تمثيل اليوم برقمين مع صفر بادئ (01 إلى 31).
  • dddd: إظهار الاسم الكامل لليوم المقابل في الأسبوع (مثال: الأحد، الإثنين).

إن صياغة نمط مثل yyyy-mm-dd (dddd) يُكسب البيانات المولدة وضوحاً فائقاً يلبي المتطلبات البحثية الدقيقة، ويسمح بالتحقق الفوري من التوزيع الزمني للأيام دون الحاجة لدوال إضافية.

4.3 معالجة مشكلات العرض البصري ورموز التنبيه الشائعة

قد يواجه المستخدم بعد تطبيق التنسيق الزمني ظهور سلسلة متتالية من علامات المربع المتكررة (مثل: #####) تغطي خلايا العمود بالكامل، وهو ما يثير قلقاً خاطئاً بحدوث تلف في البيانات. في الواقع، تُعد هذه العلامات مؤشراً بصرياً صريحاً من إكسل يفيد بأن عرض العمود الحالي غير كافٍ لعرض السلسلة النصية للتاريخ بالتنسيق المختار، ولا سيما عند اختيار تنسيق التاريخ الطويل الذي يحتوي على أسماء الأيام والشهور كاملة.

تتم معالجة هذه الظاهرة ببساطة عبر وضع مؤشر الفأرة على الحد الفاصل بين حرف العمود الحالي والعمود الذي يليه في أعلى ورقة العمل والنقر المزدوج بزر الفأرة الأيسر، مما يؤدي إلى توسيع العمود تلقائياً ليتناسب مع أطول مدخل في الخلايا (AutoFit)، لتظهر التواريخ المنسقة بوضوح تام. كما ينبغي التحقق من عدم تطبيق إعدادات تحول الأرقام إلى نصوص غير قابلة للفرز، وذلك بالتأكد من بقاء التصنيف الأساسي ضمن التنسيقات الرقمية المخصصة للتاريخ لضمان استمرارية قدرة البرنامج على إجراء العمليات الحسابية والمنطقية اللاحقة عليها.

5. توليد تواريخ عشوائية دون خلايا مساعدة باستخدام دمج الدوال

5.1 التضمين المباشر لدالة DATE داخل وسائط RANDBETWEEN

على الرغم من الفوائد التنظيمية لاستخدام الخلايا المرجعية المستقلة، إلا أن بعض النماذج الحسابية وقوالب الاستبيانات المدمجة تتطلب تصميماً ذاتي الاكتفاء لا يعتمد على خلايا خارجية مساعدة قد تتعرض للحذف أو التعديل العرضي من قِبل المستخدمين النهائيين. في مثل هذه الحالات، يمكن تضمين دالة DATE مباشرة داخل وسائط دالة RANDBETWEEN.

تستقبل دالة DATE ثلاثة وسائط عددية مستقلة ترتب حصراً على النحو: السنة، ثم الشهر، ثم اليوم DATE(year, month, day). وعند دمج دالتين من هذا النوع لتحديد طرفي النطاق الزمني العشوائي، تصبح الصيغة الحسابية على النحو التالي:

=RANDBETWEEN(DATE(2023, 1, 1), DATE(2023, 12, 31))

تقوم دالة DATE في هذا التركيب البرمجي بتحويل المعطيات التقويمية المدخلة إلى قيمتها التسلسلية الرقمية الدقيقة داخلياً قبل تمريرها إلى دالة RANDBETWEEN. يضمن هذا الأسلوب سلامة الحدود الزمنية عبر عزل المعادلة بالكامل عن أي اختلافات في الإعدادات الإقليمية لأجهزة الحاسوب المختلفة؛ فالدالة تفرض منطقاً ثابتاً للسنة والشهر واليوم، مما يجعل الملف قابلاً للتبادل والمشاركة العالمية دون خوف من انعكاس ترتيب اليوم والشهر عند فتح المصنف في بيئات تشغيلية متباينة.

5.2 الاعتماد على الأرقام التسلسلية المباشرة في كتابة الصيغ

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

فعلى سبيل المثال، يُمثل تاريخ 1 يناير 2020 بالرقم التسلسلي 43831، بينما يُمثل تاريخ 31 ديسمبر 2020 بالرقم التسلسلي 44196. وعليه، يمكن كتابة الصيغة مباشرة بالصورة التالية:

=RANDBETWEEN(43831, 44196)

يؤدي هذا التضمين العددي المباشر إلى تخفيض الزمن الحسابي اللازم لتفسير الصيغة البرمجية، حيث يتعامل المعالج مع مدخلات رقمية صرفة دون الحاجة لتحويلات بينية. ومع ذلك، تتطلب هذه الطريقة دقة متناهية في توثيق أصل هذه الأرقام في هوامش مصنف العمل؛ نظراً لأن قراءة الأرقام التسلسلية المجردة تفتقر إلى الوضوح البصري الذاتي الذي توفره دالة DATE، مما قد يعقد عمليات المراجعة البرمجية اللاحقة على النموذج.

5.3 مزايا التضمين الذاتي في تبسيط بنية مصنفات العمل

يوفر التضمين الذاتي للصيغ الرياضية—سواء عبر دمج دالة DATE أو عبر الأرقام التسلسلية المباشرة—مزايا معمارية بارزة في تصميم أوراق العمل. تتمثل الميزة الكبرى في تقليل الاعتماديات الخارجية (External Dependencies)؛ فالصيغة تعمل كوحدة برمجية قائمة بذاتها داخل الخلية دون استناد إلى نطاقات مساعدة، مما يسهل نقل العمود بأكمله ونسخه إلى مصنفات ومشاريع أخرى دون القلق من ظهور أخطاء المراجع المفقودة المزعجة مثل #REF!.

كذلك يسهم هذا النهج في حماية سلامة التجارب والبحوث، حيث يتم إقفال وحماية المعايير المعيارية للتجربة ضمن كود الخلية نفسه. هذا يمنع المستخدمين المساعدين أو المدخلين الميدانيين من التلاعب غير المقصود بحدود النطاق الزمني للدراسة، ويوفر بيئة عمل تتسم بالصلابة الهندسية وسهولة التوزيع والنشر بين الفرق البحثية المستقلة.

6. توليد أيام عمل عشوائية واستبعاد عطلات نهاية الأسبوع والإجازات

6.1 المنطق الإحصائي لاستبعاد أيام العطلات في الدراسات التطبيقية

في العديد من التطبيقات المهنية والدراسات المؤسسية وأبحاث علم النفس التنظيمي وسلوك المستهلك، لا تتوزع الأنشطة الإنسانية والاقتصادية بالتساوي عبر كافة أيام الأسبوع؛ إذ تشكل عطلات نهاية الأسبوع (كأيام الجمعة والسبت أو السبت والأحد) والإجازات الرسمية فترات انقطاع حقيقية تتوقف فيها المعاملات البنكية، أو الفحوصات الطبية الدورية، أو دوام الموظفين في المنشآت. وعليه، فإن توليد تواريخ عشوائية تقع في أيام عطلات رسمية قد يقود إلى تسجيل قياسات غير واقعية، مما يطعن في مصداقية البيانات التحليلية والصدق التنبؤي للنماذج الإحصائية.

يتطلب التحليل الرصين محاكاة دقيقة تحصر العينات الزمنية في أيام النشاط والعمل الفعلي فقط (Working Days). ومن هنا تبرز الحاجة إلى تجاوز دالة RANDBETWEEN البسيطة التي تعتمد التوزيع الأعمى عبر كافة الأيام المتتالية، واستبدالها بنماذج مركبة تدمج بين الاحتمالية الرياضية والتقويم المؤسسي الفعلي لتجاوز أيام الراحة الأسبوعية والمناسبات الرسمية بدقة متناهية.

6.2 دمج دالة WORKDAY ودوال التوزيع العشوائي

تُعد دالة WORKDAY الأداة المعيارية في إكسل لحساب تواريخ العمل عبر القفز فوق عطلات نهاية الأسبوع المعتادة (السبت والأحد افتراضياً). تأخذ الدالة تاريخ بداية محدداً، وتضيف إليه عدداً معيناً من أيام العمل للوصول إلى التاريخ المستهدف. ولتوليد تواريخ عمل عشوائية تقع ضمن نطاق زمني محدد، نقوم بتوليد إزاحة عددية عشوائية لأيام العمل تضاف إلى نقطة البداية.

لتحقيق ذلك بدقة رياضية، يجب أولاً حساب إجمالي عدد أيام العمل الفعلية المتاحة بين تاريخي البداية والنهاية باستخدام دالة مكملة هي دالة NETWORKDAYS. فإذا كان تاريخ البداية في الخلية A2 وتاريخ النهاية في الخلية B2، فإن الصيغة المركبة تُصاغ على النحو التالي:

=WORKDAY(A2, RANDBETWEEN(0, NETWORKDAYS(A2, B2) - 1))

يعمل هذا التركيب التكاملي بمنطق محكم؛ حيث تحسب دالة NETWORKDAYS(A2, B2) العدد الإجمالي لأيام العمل الصالحة ضمن النطاق، ثم تقوم دالة RANDBETWEEN باختيار عدد إزاحة عشوائي يبدأ من الصفر (الذي يمثل نفس تاريخ البداية إذا كان يوم عمل) وحتى الحد الأقصى لأيام العمل المتاحة مطروحاً منه واحد. تتولى دالة WORKDAY بعد ذلك الانطلاق من تاريخ البداية والقفز عشوائياً بعدد الأيام المولد متجاوزة عطلات نهاية الأسبوع تلقائياً، مما يضمن الحصول على تاريخ عمل عشوائي يقع حتماً داخل الإطار الزمني للدراسة دون أن يصادف أي عطلة أسبوعية قياسية.

6.3 استخدام دالة WORKDAY.INTL للتحكم المتقدم في العطلات المخصصة

تختلف أنماط عطلات نهاية الأسبوع باختلاف البيئات الجغرافية والأنظمة الإقليمية؛ ففي العديد من الدول العربية والإسلامية، تمثل عطلة نهاية الأسبوع يومي الجمعة والسبت، أو قد تقتصر على يوم الجمعة فقط في بعض القطاعات التشغيلية. تقدم دالة WORKDAY.INTL (أيام العمل الدولية) مرونة فائقة لمعالجة هذه التباينات، حيث تتيح للمستخدم تحديد نمط العطلة بدقة عبر وسيط مخصص، بالإضافة إلى استبعاد قائمة مخصصة من الإجازات الرسمية والعطلات الاستثنائية.

إذا كان تاريخ البداية في A2، وتاريخ النهاية في B2، ونطاق العطلات الرسمية السنوية مدوناً في الخلايا $H$2:$H$15، ونمط العطلة الأسبوعية هو (الجمعة والسبت) الذي يُرمز له بالرقم 7 في إكسل، تصبح المعادلة المركبة الشاملة كالتالي:

=WORKDAY.INTL(A2, RANDBETWEEN(0, NETWORKDAYS.INTL(A2, B2, 7, $H$2:$H$15) - 1), 7, $H$2:$H$15)

تضمن هذه الصيغة المتقدمة توليد تاريخ عمل عشوائي يستبعد تلقائياً عطلتي الجمعة والسبت، ويسقط بالكامل أي عطلة رسمية مدرجة في النطاق H2:H15 (مثل إجازات الأعياد الوطنية والدينية). يمثل هذا المستوى من المحاكاة الزمنية الأداة المثالية لتجارب البحوث الطبية التي ترتبط بزيارات سريرية في أيام الدوام الرسمي للعيادات، ونماذج إدارة المشاريع الصارمة التي تتطلب جدولة مواعيد التدقيق الهندسي بدقة متناهية.

7. توليد تواريخ وأوقات عشوائية متكاملة بدقة الساعات والدقائق

7.1 المنطق الرياضي للكسور العشرية ودور دالة RAND القياسية

كما تم توضيحه في الأسس النظرية، تُعامل بيئة إكسل الوقت باعتباره كسراً عشرياً مستمراً محصوراً في المجال الرياضي المفتوح [0, 1). في هذا السياق، تبرز دالة RAND القياسية كأداة رياضية متكاملة لتمثيل الوقت العشوائي؛ إذ تتميز هذه الدالة بعدم استقبال أي وسائط، وتقوم بتوليد أرقام حقيقية مستمرة (Real Numbers) تتوزع توزيعاً منتظماً متصلاً في المجال المذكور:

=RAND()

نظراً لأن أي قيمة كسرية ناتجة عن دالة RAND تقع بين الصفر والواحد الصحيح، فإنها تعبر مباشرة عن جزء منقضٍ من اليوم الواحد. فعلى سبيل المثال، يؤدي توليد كسر مثل 0.25 إلى تمثيل ربع اليوم بدقة (أي الساعة السادسة صباحاً تماماً 06:00 AM)، في حين يمثل الكسر 0.75 ثلاثة أرباع اليوم (الساعة السادسة مساءً 18:00). وبناءً على هذا التكامل الجبري، فإن إضافة نتيجة دالة RAND الكسرية إلى نتيجة دالة RANDBETWEEN الصحيحة تتيح بناء متغير زمني عشوائي يجمع بين التاريخ الدقيق والوقت المفصل ضمن قيمة عددية واحدة.

7.2 صياغة معادلة التوليد الزمني المركبة

لبناء طابع زمني كامل (Timestamp) يشتمل على التاريخ والساعة والدقيقة والثانية بصورة عشوائية تقع بين تاريخين، يتم تطبيق الجمع الجبري المباشر بين الدالتين في صيغة موحدة:

=RANDBETWEEN($A$2, $B$2) + RAND()

تولد دالة RANDBETWEEN في هذه المعادلة الرقم التسلسلي الصحيح الذي يحدد اليوم، بينما تولد دالة RAND الكسر العشري العشوائي الذي يحدد الزمن اللحظي خلال ذلك اليوم بدقة تصل إلى أجزاء من الثانية. وفي التطبيقات البحثية المتقدمة كدراسات قياس زمن الاستجابة السلوكية أو تحليل أوقات الذروة في مراكز الاتصال، قد يتطلب الأمر حصر الأوقات المولدة ضمن نافذة زمنية محددة من اليوم (مثلاً: بين الساعة 08:00 صباحاً والساعة 16:00 عصراً). يمكن تحقيق ذلك عبر ضبط الجزء الكسري باستخدام تحويلات النطاق الرياضي كالتالي:

=RANDBETWEEN($A$2, $B$2) + (TIME(8, 0, 0) + RAND() * (TIME(16, 0, 0) - TIME(8, 0, 0)))

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

7.3 تنسيق مخرجات الوقت والتاريخ المدمجة بأسلوب معياري

بمجرد تطبيق الصيغة المركبة، سينتج إكسل رقماً عشرياً يجمع بين الجزء الصحيح والكسور العشرية (مثل: 45123.41667). لإظهار هذا الرقم في نسق تاريخ ووقت متكامل وواضح، يتم فتح نافذة تنسيق الخلايا (Ctrl + 1) والانتقال إلى فئة مخصص (Custom).

يُكتب في خانة النوع أحد الأنماط القياسية المعترف بها دولياً في توثيق السلاسل الزمنية، مثل النمط المعتمد على نظام 24 ساعة:

yyyy-mm-dd hh:mm:ss

أو يمكن تطبيق نمط 12 ساعة مع إضافة مؤشر الصباح والمساء للمتلقي:

dd/mm/yyyy hh:mm AM/PM

يسمح هذا التنسيق المزدوج برؤية التاريخ مقترناً بالساعات والدقائق بدقة متناهية، مع احتفاظ الخلية بطبيعتها الرقمية القابلة للمعالجة والتصدير المباشر نحو حزم التحليل الإحصائي المتقدمة مثل SPSS أو برمجيات لغة R و Python دون الحاجة إلى معالجة نصية مسبقة.

8. تثبيت التواريخ العشوائية وضمان استقرار البيانات المحسوبة

8.1 طبيعة الدوال المتطايرة ومخاطر استمرار إعادة الحساب التلقائي

كما تم الإيضاح في المحاور التأسيسية، تصنف دوال الأرقام العشوائية في إكسل كدوال متطايرة تخضع لآليات إعادة الحساب اللحظية المستمرة. في سياق الممارسة الميدانية، يشكل بقاء هذه الصيغ في حالتها النشطة خطراً منهجياً جسيماً على سلامة البحث والتحليل؛ إذ إن أي إدخال لبيانات جديدة في أي خلية جانبية، أو الضغط على مفتاح الإدخال، أو فرز عمود آخر، سيؤدي فوراً إلى إعادة توليد مصفوفة التواريخ بالكامل والحصول على قيم جديدة تماماً تختلف عن تلك التي بنيت عليها التحليلات الأولية.

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

8.2 تقنية النسخ واللصق كقيم لتجميد العينات الزمنية

تُمثل تقنية “اللصق كقيم” (Paste as Values) الإجراء القياسي الأكثر فاعلية لتحويل الصيغ الرياضية المتطايرة إلى بيانات إحصائية ثابتة ومستقرة نهائياً. يتم تنفيذ هذا الإجراء عبر خطوات دقيقة ومتتابعة:

  • تظليل نطاق التواريخ العشوائية المولدة بالكامل باستخدام اختصار لوحة المفاتيح Ctrl + Shift + Down Arrow.
  • نسخ النطاق المظلل إلى الحافظة بالضغط على المفتاحين الشهيرين Ctrl + C.
  • إبقاء النطاق مظللاً في مكانه، والنقر بزر الفأرة الأيمن لفتح قائمة الخيارات السريعة.
  • اختيار أمر “قيم” (Values) من خيارات اللصق، والذي يظهر عادة كأيقونة تحمل الأرقام (123). بدلاً من ذلك، يمكن استخدام الاختصار السريع Alt + E + S + V ثم الضغط على مفتاح Enter.

يؤدي هذا الإجراء الحاسم إلى إزالة الصيغ البرمجية (مثل RANDBETWEEN) من شريط الصيغ واستبدالها بالقيمة اللحظية الناتجة بصورة ثابتة، مع الاحتفاظ الكامل بالتنسيق البصري للتواريخ. يُنصح منهجياً بالاحتفاظ بنسخة احتياطية من الصيغة الأصلية في ورقة عمل مستقلة قبل تنفيذ عملية التجميد، وذلك لضمان إمكانية الرجوع إلى خوارزمية التوليد عند الرغبة في بناء عينات جديدة لاحقاً.

8.3 إدارة خيارات الحساب في المصنفات المعقدة

في المراحل الانتقالية لبناء النماذج المالية والبحثية الضخمة وقبل اتخاذ قرار التجميد النهائي، قد يرغب الباحث في إيقاف إعادة الحساب المستمرة مع الحفاظ على الصيغ الرياضية حية لاختبار سيناريوهات محددة. يتيح برنامج إكسل التحكم الكامل في هذا السلوك عبر ضبط خيارات الحساب (Calculation Options).

من خلال الانتقال إلى شريط “صيغ” (Formulas)، ثم اختيار “خيارات الحساب” (Calculation Options)، يمكن تحويل النمط من تلقائي (Automatic) إلى يدوي (Manual). عند تفعيل هذا النمط، يتوقف إكسل كلياً عن إعادة حساب أي صيغة داخل المصنف مهما طرأت تعديلات على الخلايا. وعندما يقرر الباحث تحديث التواريخ العشوائية وتوليد عينة جديدة بإرادته الحرة، يكتفي بالضغط على مفتاح F9 لإعادة الحساب الشامل للمصنف، أو الضغط على مفتاح Shift + F9 لإعادة حساب ورقة العمل النشطة فقط. يمنح هذا الخيار الباحث توازناً مثالياً بين استقرار البيانات المؤقت والقدرة على إعادة التوليد العشوائي الموجه دون استنزاف موارد الحاسوب.

9. توليد التواريخ العشوائية باستخدام دوال المصفوفات في Microsoft 365

9.1 استخدام دالة RANDARRAY لتوليد مصفوفات زمنية متعددة الأبعاد

أحدثت محركات الحساب المعتمدة على المصفوفات الديناميكية (Dynamic Arrays) في إصدارات Microsoft 365 و Excel 2021 ثورة تقنية في كيفية معالجة البيانات، حيث قدمت مايكروسوفت دالة RANDARRAY بوصفها البديل العصري والأقوى للدوال العشوائية الكلاسيكية. تتيح هذه الدالة توليد مصفوفة متكاملة من الأرقام العشوائية وسكبها (Spill) تلقائياً عبر ورقة العمل باستخدام صيغة مفردة تُكتب في خلية واحدة فقط دون الحاجة إطلاقاً إلى سحب مقبض التعبئة التلقائية.

تأخذ دالة RANDARRAY البنية النحوية التالية:

=RANDARRAY([rows], [columns], [min], [max], [whole_number])

تستقبل الدالة خمسة وسائط تمنح الباحث تحكماً مطلقاً: عدد الصفوف المطلوبة (rows)، عدد الأعمدة (columns)، الحد الأدنى (min)، الحد الأعلى (max)، وخيار تحديد الأعداد الصحيحة (whole_number) عبر تمرير القيمة المنطقية TRUE. لتوليد مصفوفة تتكون من 1000 تاريخ عشوائي في عمود واحد يمتد بين 1 يناير 2023 و 31 ديسمبر 2023، تُكتب الصيغة المباشرة التالية في الخلية العلوية الأولى:

=RANDARRAY(1000, 1, DATE(2023, 1, 1), DATE(2023, 12, 31), TRUE)

بمجرد الضغط على Enter، تنسكب النتائج تلقائياً لتغطي ألف صف إلى الأسفل بدقة فائقة وبمعادلة وحيدة، مما يلغي تماماً مخاطر تباين الصيغ أو تلف أجزاء منها أثناء السحب والنسخ اليدوي التقليدي.

9.2 دمج دالة RANDARRAY مع دالة SORT لتنظيم البيانات

من المزايا الاستثنائية للبيئة الديناميكية الحديثة في إكسل القدرة على دمج وتمرير مخرجات دالة RANDARRAY مباشرة إلى دوال معالجة مصفوفية أخرى دون الحاجة لخطوات وسيطة. في دراسات السلاسل الزمنية (Time Series Analysis) ونماذج المحاكاة الطولية، غالباً ما يتطلب البحث أن تكون التواريخ المولدة عشوائياً مرتبة بتسلسل زمني تصاعدي تحاكي مسار تدفق الملاحظات عبر الزمن الطبيعي.

يمكن تحقيق هذا الترتيب الآني عبر إحاطة دالة RANDARRAY بدالة SORT المعيارية كما يلي:

=SORT(RANDARRAY(100, 1, DATE(2024, 1, 1), DATE(2024, 6, 30), TRUE))

تقوم هذه الصيغة المتطورة بتوليد مائة تاريخ عشوائي يقع في النصف الأول من عام 2024، ثم تتولى دالة SORT فرز هذه التواريخ تلقائياً وسكبها في ورقة العمل بترتيب زمني تصاعدي من التاريخ الأقدم إلى الأحدث. يوفر هذا الجمع البرمجي حلاً مثالياً لبناء جداول متابعة للمرضى في التجارب السريرية أو توليد سجلات طلبات العملاء عبر الزمن دون الحاجة إلى تطبيق أوامر الفرز اليدوي المتكررة التي قد تؤثر سلباً على تنظيم باقي أعمدة المصنف.

9.3 مقارنة الكفاءة المعمارية بين الدوال الكلاسيكية ودوال المصفوفات الديناميكية

عند تقييم الأداء البرمجي لملفات إكسل الضخمة، تُظهر المقارنة المعمارية تفوقاً كاسحاً لدوال المصفوفات الديناميكية مقارنة بالأساليب الكلاسيكية. في الطريقة الكلاسيكية باستخدام RANDBETWEEN، يؤدي توليد 100,000 تاريخ عشوائي إلى تخزين مائة ألف صيغة مستقلة في خلايا الذاكرة، مما يزيد من حجم الملف على القرص الصلب ويضاعف العبء البرمجي الواقع على مصفوفة التبعيات أثناء عمليات التحقق والتدقيق الداخلي.

في المقابل، تعتمد صيغة RANDARRAY على مرجع خلية واحد فقط يحتوي على المعادلة الأصلية، في حين تُمثل باقي الخلايا مجرد نطاق سكب ديناميكي (Spill Range). هذا الهيكل يقلص استهلاك الذاكرة العشوائية بصورة ملحوظة ويسرّع أوقات الحساب الإجمالية. ومع ذلك، يجب الانتباه إلى متطلبات التوافق المنهجي (Compatibility)؛ فالصيغ المصفوفية الحديثة لا تعمل على إصدارات إكسل القديمة (مثل Excel 2016 أو 2013 وما قبلهما). وبالتالي، إذا كان الباحث يشارك ملفاته مع مؤسسات أو فرق بحثية تعتمد على بنية برمجية تقليدية، فإن اللجوء إلى دالة RANDBETWEEN الكلاسيكية وتجميد مخرجاتها يظل الخيار الأكثر ضماناً لتفادي أخطاء عدم التعرف البرمجي #NAME?.

10. استكشاف الأخطاء الشائعة والاعتبارات المنهجية في التطبيقات الأكاديمية

10.1 أسباب ظهور خطأ الأرقام (#NUM!) وكيفية تداركه

يُعد خطأ القيمة العددية #NUM! العائق البرمجي الأكثر شيوعاً عند محاولة توليد التواريخ العشوائية في إكسل. ينشأ هذا الخطأ الرياضي الصريح في وسائط دالة RANDBETWEEN أو RANDARRAY عندما يقع خلل في الترتيب المنطقي للحدود؛ وتحديداً عندما تكون قيمة الحد الأدنى (bottom) أكبر عددياً من قيمة الحد الأعلى (top). وبما أن التواريخ تُعامل كأرقام تسلسلية متصاعدة، فإن إدخال تاريخ نهاية يسبق تاريخ البداية (مثلاً: البداية 2024 والانتهاء 2023) يُشكل تناقضاً حسابياً يؤدي فوراً إلى انهيار الدالة وظهور رمز الخطأ المذكور.

لتفادي هذا الخلل، يجب التأكد دائماً من صحة الترتيب الزمني في الخلايا المرجعية. وفي النماذج التفاعلية المعقدة التي يدخل فيها المستخدمون التواريخ بحرية، يمكن تحصين المعادلة عبر دمج دالتي MIN و MAX لضمان الترتيب التلقائي مهما كان سلوك المدخل البشري، كما في الصيغة الوقائية التالية:

=RANDBETWEEN(MIN(A2, B2), MAX(A2, B2))

تضمن هذه الصياغة الذكية اختيار القيمة الأقدم دائماً كحد أدنى والقيمة الأحدث كحد أقصى بصورة آلية، مما يمنع ظهور خطأ #NUM! بصورة قاطعة ويحافظ على انسيابية عمل النموذج التحليلي.

10.2 مشكلات التوزيع غير المنتظم والتحيزات في العينات الزمنية

من الناحية الإحصائية والمنهجية، تفترض دالة RANDBETWEEN توزيعاً احتمالياً متساوياً ومنتظماً للأرقام الصحيحة؛ ومع ذلك، قد تبرز مشكلات تحيز غير مقصودة في العينات الزمنية في حالات خاصة. المشكلة الأبرز هي ظاهرة التكرار المحتمل (Duplication Problem)؛ فالدالة تولد قيماً عشوائية مع الإحلال (Sampling with Replacement)، مما يعني وجود احتمالية رياضية حتمية لتكرار نفس التاريخ عدة مرات، خاصة إذا كان حجم العينة المطلوب توليدها كبيراً بالنسبة للمجال الزمني المتاح (مثال: توليد 50 تاريخاً ضمن شهر واحد يضم 30 يوماً فقط).

إذا كانت التجربة البحثية تشترط استقلالية التواريخ وعدم تكرارها مطلقاً (Sampling without Replacement)، فإن استخدام دالة RANDBETWEEN بمفردها يُعد خللاً منهجياً. في هذه الظروف، يجب اللجوء إلى خوارزميات الترتيب العشوائي الفريد؛ مثل إدراج عمود يحتوي على كافة تواريخ النطاق بالتتابع، وتوليد أرقام عشوائية مجاورة لها باستخدام RAND، ثم فرز التواريخ بناءً على الأرقام العشوائية واقتطاع العدد المطلوب من التواريخ، مما يضمن الحصول على تواريخ عشوائية فريدة تماماً وخالية من أي تكرار.

10.3 التوثيق العلمي لبروتوكول توليد البيانات العشوائية

تفرض المعايير الأكاديمية الصارمة الصادرة عن المؤسسات العلمية المحكمة التزاماً تاماً بالشفافية وقابلية تكرار النتائج (Reproducibility). عند استخدام التواريخ الاصطناعية أو العينات الزمنية العشوائية كجزء من منهجية البحث المنشور، لا يجوز الاكتفاء بذكر أن “البيانات جُمعت في تواريخ عشوائية”، بل يجب توثيق البروتوكول الإجرائي والبرمجي بدقة داخل قسم المنهجية (Methodology Section).

يشمل التوثيق العلمي الرصين تدوين إصدار برنامج إكسل المستخدم، والدوال الرياضية المطبقة مع وسائطها وحدودها الدقيقة، والنمط المعتمد لاستبعاد العطلات الرسمية إن وُجدت، وتوضيح ما إذا كانت التواريخ قد خضعت لعملية تثبيت وتجميد للقيم لتفادي التغيرات المتطايرة. هذا الإفصاح المنهجي الدقيق يعزز من موثوقية العمل الأكاديمي، ويتيح للباحثين المستقلين مراجعة التجربة، أو إعادة محاكاتها، أو اختبار متانة استنتاجاتها في ظل ظروف مماثلة، وهو ما يشكل جوهر النزاهة العلمية في معالجة البيانات الرقمية الحديثة.

الخاتمة

يُمثل توليد التواريخ العشوائية في برنامج مايكروسوفت إكسل مهارة تقنية ومنهجية بالغة الأهمية تتكامل فيها المبادئ الرياضية مع الحلول البرمجية العملية. وكما اتضح من التحليل المفصل عبر هذا الدليل، فإن القوة الحقيقية لإكسل في معالجة التواريخ تنبع من بنيته التسلسلية المتينة؛ حيث يُحول البرنامج الفترات الزمنية والتقويمية إلى أرقام صحيحة وكسور عشرية تخضع لقوانين الحساب والجبر الاحتمالي، مما يتيح توظيف دوال التوليد العشوائي المتنوعة بكفاءة متناهية ومرونة واسعة.

بدءاً من الاستخدام الكلاسيكي لدالة RANDBETWEEN، مروراً بالاستبعاد الاحترافي لأيام الراحة عبر دالتي WORKDAY و WORKDAY.INTL، وتوليد الطوابع الزمنية المركبة ذات الأجزاء الكسرية بدقة الساعات والدقائق، وصولاً إلى الإمكانات المتقدمة للمصفوفات الديناميكية عبر RANDARRAY، يمتلك المحلل والباحث ترسانة واسعة من الأدوات القادرة على محاكاة أدق السيناريوهات التشغيلية والتجريبية. ويبقى المعيار الأساسي للنجاح في هذا المجال هو الوعي بالآثار التقنية المصاحبة، ولا سيما طبيعة الدوال المتطايرة وضرورة تجميد البيانات وتوثيق الإجراءات بأسلوب علمي رصين يضمن استقرار النماذج وصدق مخرجاتها التحليلية في مختلف حقول المعرفة وصنع القرار.

المراجع

  • Microsoft Corporation. (n.d.). RANDBETWEEN function. Microsoft Support. https://support.microsoft.com/en-us/office/randbetween-function-4cc7f0d8-c4fb-4428-a5b6-76883c909129
  • Microsoft Corporation. (n.d.). RANDARRAY function. Microsoft Support. https://support.microsoft.com/en-us/office/randarray-function-21261e55-3bec-444b-86f2-18377027b62a
  • Microsoft Corporation. (n.d.). WORKDAY.INTL function. Microsoft Support. https://support.microsoft.com/en-us/office/workday-intl-function-a378391c-9ba5-46df-802b-828fa4646147
  • Wichmann, B. A., & Hill, I. D. (1982). An efficient and portable pseudo-random number generator. Applied Statistics, 31(2), 188–190. https://doi.org/10.2307/2347988
  • Walkenbach, J. (2015). Excel 2016 Bible. John Wiley & Sons.
★

تقييم هذا المحتوى

5.0 / 5 • 7 تقييمات

اقتباس هذا المقال

looti, M. (2026, أكتوبر 21). كيفية توليد تواريخ عشوائية في إكسل (مع أمثلة). عرب سايكلوجي. https://arabpsychology.com/statistics/generate-random-dates-in-excel-with-examples/
looti, Mohammed. “كيفية توليد تواريخ عشوائية في إكسل (مع أمثلة).” عرب سايكلوجي, 21 أكتوبر 2026, https://arabpsychology.com/statistics/generate-random-dates-in-excel-with-examples/.
looti, Mohammed. “كيفية توليد تواريخ عشوائية في إكسل (مع أمثلة).” عرب سايكلوجي. أكتوبر 21, 2026. https://arabpsychology.com/statistics/generate-random-dates-in-excel-with-examples/.