جدول المحتويات
في هذه المقالة ، سننظر في طرق مختلفة لفرز التواريخ في Excel. سوف تتعلم كيفية ترتيب التواريخ بسرعة بترتيب زمني ، والفرز حسب الشهر مع تجاهل السنوات ، وفرز أعياد الميلاد حسب الشهر واليوم ، وكيفية الفرز التلقائي حسب التاريخ عند إدخال القيم الجديدة.
برنامج Excel المضمّن تعتبر خيارات الفرز أدوات قوية وفعالة ، لكنها لا تعمل دائمًا بشكل صحيح عندما يتعلق الأمر بفرز التواريخ. سيعلمك هذا البرنامج التعليمي بعض الحيل المفيدة لترتيب Excel حسب التاريخ بطريقة ذات مغزى دون العبث ببياناتك.
كيفية فرز التواريخ بترتيب زمني
الترتيب التواريخ بالترتيب الزمني في Excel سهلة للغاية. ما عليك سوى استخدام الخيار القياسي الترتيب التصاعدي :
- حدد التواريخ التي تريد فرزها ترتيبًا زمنيًا.
- في علامة التبويب الصفحة الرئيسية ، في المجموعة تنسيقات ، انقر فوق فرز & amp؛ قم بتصفية وحدد فرز الأقدم إلى الأحدث . بدلاً من ذلك ، يمكنك استخدام الخيار A-Z في علامة التبويب البيانات ، في علامة التبويب Sort & amp؛ تصفية المجموعة .
كيفية الفرز حسب التاريخ في Excel
يمكن أيضًا استخدام خيارات فرز Excel لإعادة ترتيب الجدول بأكمله ، وليس مجرد عمود واحد. لفرز السجلات حسب التاريخ مع الحفاظ على الصفوف سليمة ، فإن النقطة الأساسية هي توسيع التحديد عند المطالبة.
فيما يلي الخطوات التفصيلية لفرز البيانات في Excel حسب التاريخ:
- في جدول البيانات ، حدد التواريخ بدون العمودheader.
- في علامة التبويب الصفحة الرئيسية ، انقر فوق Sort & amp؛ قم بتصفية واختر فرز الأقدم إلى الأحدث .
- سيظهر مربع الحوار تحذير الفرز . اترك الخيار الافتراضي وسّع التحديد محددًا ، وانقر فوق فرز :
هذا كل شيء! تم فرز السجلات حسب التاريخ وتم الاحتفاظ بجميع الصفوف معًا:
كيفية الفرز حسب الشهر في Excel
قد تكون هناك أوقات ترغب فيها لفرز التواريخ حسب الشهر مع تجاهل السنة ، على سبيل المثال عند تجميع تواريخ الذكرى السنوية لزملائك أو أقاربك. في هذه الحالة ، لن تعمل ميزة فرز Excel الافتراضية لأنها دائمًا ما تأخذ في الاعتبار السنة ، حتى إذا تم تنسيق الخلايا الخاصة بك لعرض الشهر أو الشهر واليوم فقط.
الحل هو إضافة عمود مساعد ، فاستخرج رقم الشهر وفرز حسب هذا العمود. للحصول على شهر من التاريخ ، استخدم الدالة MONTH.
في لقطة الشاشة أدناه ، نستخرج رقم الشهر من التاريخ في B2 بهذه الصيغة:
=MONTH(B2)
نصيحة. إذا تم عرض النتيجة كتاريخ بدلاً من رقم ، فقم بتعيين تنسيق عام لخلايا الصيغة.
والآن ، قم بفرز الجدول حسب العمود الشهر . لهذا ، حدد أرقام الشهر (C2: C8) ، انقر فوق فرز & amp؛ تصفية & gt؛ الفرز من الأصغر إلى الأكبر ، ثم قم بتوسيع التحديد عندما يطلب منك Excel القيام بذلك. إذا تم كل شيء بشكل صحيح ، فستحصل على ما يليالنتيجة:
يرجى الانتباه إلى أنه يتم الآن فرز بياناتنا حسب الشهر ، مع تجاهل السنوات والأيام في كل شهر. إذا كنت ترغب في الفرز حسب الشهر واليوم ، فاتبع الإرشادات من المثال التالي.
إذا تم إدخال أسماء الشهر على أنها نص ، فقم بالفرز من خلال قائمة مخصصة كما هو موضح في هذا المثال.
كيفية فرز أعياد الميلاد في Excel حسب الشهر واليوم
عند ترتيب التواريخ لتقويم عيد ميلاد ، سيكون الحل الأمثل هو فرز التواريخ حسب الشهر و يوم. وبالتالي ، فأنت بحاجة إلى صيغة تسحب الأشهر والأيام من تواريخ الميلاد.
في هذه الحالة ، تكون وظيفة Excel TEXT ، التي يمكنها تحويل تاريخ إلى سلسلة نصية بالتنسيق المحدد ، في متناول يديك . لغرضنا ، سيعمل كود التنسيق "mmdd" أو "mm.dd".
مع تاريخ المصدر في B2 ، تأخذ الصيغة هذا الشكل:
=TEXT(B2, "mm.dd")
بعد ذلك ، قم بفرز عمود الشهر واليوم من الأكبر إلى الأصغر ، وستكون لديك البيانات مرتبة حسب أيام كل شهر.
يمكن تحقيق نفس النتيجة باستخدام صيغة DATE مثل هذا:
=DATE(2000, MONTH(B2),DAY(B2))
تنشئ الصيغة قائمة بالتواريخ عن طريق استخراج الشهر واليوم من التاريخ الفعلي في B2 واستبدال عام حقيقي مع عام مزيف ، 2000 في هذا المثال ، على الرغم من أنه يمكنك وضع أي منها. الفكرة هي أن يكون لديك نفس السنة لجميع التواريخ ، ثم قم بفرز قائمة التواريخ بترتيب زمني.نظرًا لأن العام هو نفسه ، سيتم فرز التواريخ حسب الشهر واليوم ، وهو بالضبط ما تبحث عنه.
كيفية فرز البيانات حسب السنة في Excel
عندما يتعلق الأمر الفرز حسب السنة ، أسهل طريقة هي ترتيب التواريخ بالترتيب الزمني مع خيار الترتيب التصاعدي في Excel ( الأقدم إلى الأحدث ).
سيؤدي هذا إلى فرز التواريخ حسب السنة ، ثم بالشهر ، ثم باليوم كما هو موضح في لقطة الشاشة أدناه.
إذا لم تكن راضيًا عن هذا الترتيب لسبب ما ، فيمكنك إضافة عمود مساعد مع صيغة YEAR التي تستخرج السنة من التاريخ:
=YEAR(C2)
بعد فرز البيانات حسب العمود السنة ، ستلاحظ أنه تم فرز التواريخ حسب السنة فقط ، تجاهل الأشهر والأيام .
نصيحة. إذا كنت ترغب في فرز التواريخ حسب اليوم بغض النظر عن الأشهر والسنوات ، فاستخرج اليوم باستخدام وظيفة DAY ، ثم قم بالفرز حسب العمود اليوم :
=DAY(B2)
كيفية الفرز حسب أيام الأسبوع في Excel
لفرز البيانات حسب أيام الأسبوع ، ستحتاج أيضًا إلى عمود مساعد كما في الأمثلة السابقة. في هذه الحالة ، سنقوم بملء العمود المساعد بصيغة WEEKDAY التي تُرجع رقمًا مطابقًا ليوم الأسبوع ، ثم نقوم بالفرز حسب عمود المساعد.
لمدة أسبوع يبدأ من الأحد (1) ) إلى السبت (7) ، هذه هي الصيغة المستخدمة:
=WEEKDAY(A2)
إذا كان أسبوعك يبدأ من الاثنين (1) إلى الأحد(7) ، هذا هو الصحيح:
=WEEKDAY(A2, 2)
حيث A2 هي الخلية التي تحتوي على التاريخ.
في هذا المثال ، استخدمنا الصيغة الأولى وحصلنا على هذا النتيجة:
في حالة إدخال أسماء أيام الأسبوع كنص ، وليس كتواريخ ، فاستخدم ميزة التصنيف المخصص كما هو موضح في المثال التالي.
كيفية فرز البيانات في Excel حسب أسماء الأشهر (أو أسماء أيام الأسبوع)
في حالة وجود قائمة بأسماء الأشهر كنص ، وليس كتواريخ منسقة للعرض أشهر فقط ، قد يكون تطبيق التصنيف التصاعدي في Excel مشكلة - سيتم ترتيب أسماء الأشهر أبجديًا بدلاً من الترتيب حسب الشهر من يناير إلى ديسمبر. في هذه الحالة ، سيساعد الفرز المخصص:
- حدد السجلات التي تريد الفرز حسب اسم الشهر.
- في علامة التبويب البيانات ، في علامة التبويب فرز & أمبير ؛ مجموعة التصفية ، انقر فوق فرز .
- في مربع الحوار فرز ، قم بما يلي:
- ضمن العمود ، حدد اسم العمود الذي يحتوي على أسماء الأشهر.
- تحت فرز على ، اختر قيم الخلية .
- ضمن ترتيب ، حدد قائمة مخصصة .
- في مربع الحوار القوائم المخصصة ، حدد إما أسماء أشهر كاملة ( يناير ، فبراير ، مارس ، ...) أو أسماء قصيرة ( يناير ، فبراير ، مارس …) اعتمادًا على كيفية سرد الأشهر في ورقة العمل:
تم! تم فرز بياناتك حسب اسم الشهر بترتيب زمني ، وليس أبجديًا:
نصيحة. للفرز حسب أسماء أيام الأسبوع ، حدد إما الأسماء الكاملة ( الأحد ، الاثنين ، الثلاثاء ،…) أو الأسماء القصيرة ( الشمس ، Mon ، الثلاثاء …) في مربع الحوار قوائم مخصصة .
كيفية الفرز التلقائي حسب التاريخ في Excel
كما رأيت ، تتواءم ميزة Excel Sort مع مجموعة متنوعة من التحديات. العيب الوحيد هو أنه ليس ديناميكيًا. بمعنى أنه سيتعين عليك إعادة فرز بياناتك مع كل تغيير وكلما تمت إضافة معلومات جديدة. ربما تتساءل عما إذا كانت هناك طريقة للفرز تلقائيًا في كل مرة تتم فيها إضافة تاريخ جديد بحيث تكون بياناتك دائمًا بالترتيب.
أفضل طريقة لتحقيق ذلك هي باستخدام ماكرو. أدناه ، ستجد بعض الأمثلة على التعليمات البرمجية لفرز البيانات التالية تلقائيًا حسب التاريخ بترتيب زمني.
الماكرو 1: الفرز التلقائي مع كل تغيير في ورقة العمل
يتم تنفيذ هذا الماكرو كلما حدث تغيير في أي مكان في ورقة العمل.
من المفترض أن تكون بياناتك في الأعمدة من A إلى C ، والتواريخ التي تريد الفرز وفقًا لها موجودة في العمود C ، بدءًا من C2. من المفترض أيضًا أن الصف 1 يحتوي على رؤوس (Header: = xlYes). إذا كانت سجلاتك في أعمدة مختلفة ، فقم بإجراء التعديلات التالية:
- قم بتغيير مرجع A1 إلى الخلية اليسرى العلوية منالنطاق الهدف (بما في ذلك الرؤوس).
- قم بتغيير مرجع C2 إلى أعلى خلية تحتوي على تاريخ.
Macro 2: Auto Sort when يتم إجراء التغييرات على نطاق معين
إذا كنت تعمل باستخدام ورقة عمل ضخمة تحتوي على الكثير من المعلومات ، فقد تكون إعادة الفرز مع أي تغيير في الورقة أمرًا مزعجًا. في هذه الحالة ، من المنطقي قصر تشغيل الماكرو على التغييرات التي تحدث في نطاق معين. يفرز رمز VBA التالي البيانات فقط عند إجراء تغيير في العمود C الذي يحتوي على التواريخ.
Private Sub Worksheet_Change (ByVal Target As Range) عند الخطأ ، استئناف التالي إذا لم يتقاطع (الهدف ، النطاق ("C: C" )) لا شيء ثم النطاق ("A1"). مفتاح الفرز 1: = النطاق ("C2") ، _ الترتيب 1: = xlAscending ، العنوان: = xlYes ، _ OrderCustom: = 1 ، MatchCase: = False ، _ الاتجاه: = xlTopToBottom End If End Subنصيحة. يمكن استخدام وحدات الماكرو هذه للفرز التلقائي حسب أي نوع بيانات ، وليس التواريخ فقط. يتم فرز رموز العينة بترتيب تصاعدي. إذا كنت ترغب في الفرز تنازليًا ، فقم بتغيير Order1: = xlAscending إلى Order1: = xlDescending.
كيفية إضافة الماكرو إلى ورقة العمل الخاصة بك
حيث يتم تشغيل كلا وحدات الماكرو تلقائيًا عند تغيير ورقة العمل ،يجب إدراج الكود في الورقة حيث تريد فرز البيانات (الورقة 1 في هذا المثال). وإليك الطريقة:
- اضغط على Alt + F11 لفتح محرر VBA.
- في Project Explorer على اليسار ، انقر نقرًا مزدوجًا فوق الورقة حيث تريد الفرز التلقائي.
- الصق الكود في نافذة الكود.
تواريخ الفرز التلقائي مع الصيغة
لنفترض أن لديك قائمة التواريخ وتريد أن يتم ترتيبها تلقائيًا بترتيب زمني في عمود منفصل جنبًا إلى جنب مع القائمة الأصلية. يمكن القيام بذلك باستخدام صيغة الصفيف التالية:
=IFERROR(INDEX($A$2:$A$20, MATCH(ROWS($A$2:A2), COUNTIF($A$2:$A$20, "<="&$A$2:$A$20), 0)), "")
حيث A2: A20 هي التواريخ الأصلية (غير المفروزة) ، بما في ذلك بعض الخلايا الفارغة للإدخالات الجديدة المحتملة.
أدخل الصيغة في خلية فارغة بجانب العمود بالتواريخ الأصلية (C2 في هذا المثال) واضغط على مفاتيح Ctrl + Shift + Enter في نفس الوقت لإكمالها. ثم اسحب الصيغة إلى الخلايا المتبقية (C2: C20 في حالتنا).
نصيحة. لترتيب التواريخ المضافة حديثًا تلقائيًا ، تأكد من تضمين عدد كافٍ من الخلايا الفارغة في النطاق المشار إليه. على سبيل المثال ، قائمة التواريخ الخاصة بنا تقع في النطاق A2: A7 ، لكننا نوفر $ A $ 2: $ A $ 20 للصيغة ، ونقوم بتعبئتها في الخلايا C2 إلى C20. تمنع الدالة IFERROR حدوث أخطاء في الخلايا الإضافية ، وتعيد سلسلة فارغة ("") بدلاً من ذلك.
Excel الترتيب حسب التاريخ لا يعمل
إذا لم يتم فرز التواريخ كما هييجب أن يتم إدخالها على الأرجح بتنسيق لا يستطيع Excel فهمه ، وبالتالي يُنظر إليها على أنها سلاسل نصية وليست تواريخ. يشرح البرنامج التعليمي التالي كيفية التمييز بين ما يسمى بـ "التواريخ النصية" وتحويلها إلى تواريخ Excel عادية: كيفية تحويل النص إلى تاريخ في Excel.
هذه هي طريقة الفرز حسب التاريخ في Excel. أشكرك على القراءة وآمل أن أراك على مدونتنا الأسبوع المقبل!
التنزيلات المتاحة
فرز حسب أمثلة صيغة التاريخ (ملف .xlsx)
فرز الماكرو تلقائيًا ( ملف .xlsm)