كيف يمكن فرز التواريخ تلقائيًا في Excel عند إدخالها أو تعديلها؟
في Excel، يمكن لدالةفرزأن تساعدك على ترتيب التواريخ تصاعديًّا أو تنازليًّا حسب احتياجاتك. لكنها ليست ديناميكية؛ فبمجرد فرز التواريخ وإضافة تاريخ جديد، ستحتاج إلى فرزها يدويًّا مرة أخرى. هل توجد طريقة سريعة وفعّالة لفرز التواريخ تلقائيًّا كلما أدخلت بيانات جديدة في ورقة العمل؟
فرز التواريخ تلقائيًا عند إدخالها أو تعديلها باستخدام صيغة
فرز التواريخ تلقائيًا عند إدخالها أو تعديلها باستخدام كود VBA
فرز التواريخ تلقائيًا عند إدخالها أو تعديلها باستخدام صيغة
على سبيل المثال، إذا كانت التواريخ الأصلية موجودة في العمود A، يمكنك استخدام الصيغة التالية لفرز التواريخ أو أي سلاسل نصية أخرى تلقائيًا في عمود مساعد جديد بناءً على العمود الذي تريد فرزه. يُرجى اتباع الخطوات التالية:
1. أدخل هذه الصيغة:
=INDEX($A$2:$A$15,MATCH(ROWS($A$2:A2),COUNTIF($A$2:$A$15,«<=»&$A$2:$A$15),0))في خلية فارغة بجانب عمود التواريخ، مثلC2، ثم اضغط على مفاتيحCtrl + Shift + Enter معًا للحصول على تسلسل رقمي. بعد ذلك، اسحب مقبض التعبئة لأسفل حتى تصل إلى الخلايا المطلوبة. انظر لقطة الشاشة:
ملاحظة: في الصيغة أعلاه،A2:A15 هو نطاق التواريخ الأصلي الذي تريد فرزه تلقائيًا.

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

3. تم الآن تحويل الأرقام المتتالية إلى تنسيق التاريخ، وتم فرز التواريخ الأصلية أيضًا. انظر لقطة الشاشة:

4. بدءًا من الآن، عند إدخالك أو تعديلك لتاريخ في العمود A، سيتم فرز التواريخ في العمود C تلقائيًا بترتيب تصاعدي. انظر لقطة الشاشة:

فرز التواريخ تلقائيًا عند إدخالها أو تعديلها باستخدام كود VBA
يمكن لرمز VBA التالي مساعدتك في فرز التواريخ تلقائيًا في العمود الأصلي بمجرد إدخالك أو تعديلك لتاريخٍ ما حسب الحاجة.
1. انتقل إلى ورقة العمل التي تريد أن يتم فيها فرز التواريخ تلقائيًا عند إدخالك لتاريخ أو تعديلك له.
2. انقر بزر الماوس الأيمن على لسان التبويب، ثم اخترعرض الكودمن القائمة السياقية. بعد فتح نافذةMicrosoft Visual Basic for Applications المنبثقة، يُرجى نسخ ولصق الكود التالي في نافذةالوحدة النمطية (Module)الفارغة، كما في لقطة الشاشة:
كود VBA: فرز تلقائي عند إدخال التاريخ أو تعديله:
Private Sub Worksheet_Change(ByVal Target As Range)
'Updateby Extendoffice
On Error Resume Next
If Application.Intersect(Target, Application.Columns(1)) Is Nothing Then Exit Sub
If Target.Count > 1 Then Exit Sub
Range("A1").Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlYes, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
End Sub

ملاحظة: في الكود أعلاه، سيتم فرز التواريخ المُدخلة تلقائيًا في العمود A. يمكنك تغييرA1 وA2 إلى الخلايا التي تناسبك حسب الحاجة.
3. بدءًا من الآن، كلما أدخلت تاريخًا في العمود A، سيتم فرز التواريخ تلقائيًا بترتيب تصاعدي.
أفضل أدوات الإنتاجية لمكتبتك
عزِّز مهاراتك في 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 يومًا بكامل الميزات— بدون تسجيل، بدون بطاقة ائتمان
- أفضل قيمة— وفِّر مقارنةً بشراء الإضافات بشكل منفصل