كيفية تمييز الصف إذا كانت الخلية تحتوي على تاريخ في Excel؟
يوفر Excel طرقًا مختلفة لتسليط الضوء بصريًا على البيانات المهمة، وإحدى المتطلبات الشائعة هي تمييز الصفوف بأكملها بناءً على ما إذا كانت خلية معينة تحتوي على تاريخ. هذا مفيد بشكل خاص في الجداول الزمنية، سجلات الحضور، خطط المشروع، وأوراق التتبع الأخرى حيث تشير التواريخ إلى الحالة أو المعالم. في هذا البرنامج التعليمي، ستتعلم طرقًا مختلفة لتمييز الصفوف إذا كانت الخلية تحتوي على تاريخ، واستكشاف كل من الميزات المدمجة والبدائل الأكثر قوة لتلبية احتياجات وسير العمل المختلفة.
تمييز الصف إذا كانت الخلية تحتوي على تاريخ (التنسيق الشرطي باستخدام CELL("format"))
حل ماكرو VBA (تمييز الصفوف بالكامل مع الخلايا التي تحتوي على تواريخ)
حل صيغة Excel (فحص قوي باستخدام ISNUMBER)
تمييز الصف إذا كانت الخلية تحتوي على تاريخ (التنسيق الشرطي باستخدام CELL("format"))
يتيح التنسيق الشرطي في Excel تطبيق التنسيقات البصرية بسرعة على الخلايا أو الصفوف بناءً على القواعد المحددة. في هذا النهج، تستخدم القاعدة الدالة CELL("format", ...)
لمطابقة رموز تنسيق التاريخ الداخلية لـ Excel. هذا مناسب عندما تكون إدخالات البيانات الخاصة بك تستخدم تنسيقات تاريخ متسقة، وتحتاج إلى حل بسيط يعتمد على الصيغ.
السيناريوهات المطبقة: مفيدة للجداول البسيطة حيث يتم استخدام نفس تنسيق التاريخ طوال العمود، وترغب في تمييز الصفوف بأكملها بناءً على محتوى ذلك العمود.
المزايا: سهولة الإعداد دون الحاجة إلى صيغ معقدة أو ماكرو.
القيود: الطريقة CELL("format", ...)
تعتمد على التنسيق وقد لا تعمل بشكل موثوق إذا كانت تواريخك ذات تنسيقات مختلطة، أو إذا تم استخدام تنسيقات تاريخ مخصصة أو إقليمية، أو إذا تم تخزين بعض خلايا التاريخ كنص.
1. حدد النطاق الذي يحتوي على الصفوف التي تريد تمييزها بناءً على خلايا التاريخ، ثم انقر فوق الصفحة الرئيسية > التنسيق الشرطي > قاعدة جديدة.
2. في نافذة قاعدة التنسيق الجديدة حدد استخدام صيغة لتحديد الخلايا المراد تنسيقها في اختر نوع القاعدة القسم، ثم أدخل الصيغة =CELL("format",$C2)="D4" في قيم التنسيق حيث تكون هذه الصيغة صحيحة مربع النص.
ملاحظة: في هذا المثال، القاعدة تقوم بتمييز الصفوف حيث تكون الخلايا في العمود C مهيأة كتواريخ باستخدام الرمز D4، والذي يتوافق مع m/d/yyyy. إذا كنت تستخدم تنسيق تاريخ مختلف، استخدم الرمز المناسب من الجدول أدناه.
d-mmm-yy أو dd-mmm-yy | "D1" |
d-mmm أو dd-mmm | "D2" |
mmm-yy | "D3" |
m/d/yy أو m/d/yy h:mm أو mm/dd/yy | "D4" |
mm/dd | "D5" |
h:mm:ss AM/PM | "D6" |
h:mm AM/PM | "D7" |
h:mm:ss | "D8" |
h:mm | "D9" |
نصيحة: لتحقيق أفضل النتائج، تأكد من أن جميع تواريخك مدخلة باستخدام نفس تنسيق التاريخ. إذا كان لدى المستخدمين في مؤسستك إعدادات إقليمية مختلفة، فقد تكون النتائج غير متسقة.
3. انقر تنسيق. في التعبئة علامة تبويب تنسيق الخلايا نافذة الحوار، حدد لون خلفية لتطبيقه على الصفوف المتطابقة.
4. انقر موافق > موافق. الآن سيتم تمييز جميع الصفوف حيث العمود C يحتوي على خلية مهيأة كتاريخ (m/d/yyyy).
القضايا الشائعة: إذا لم تعمل القاعدة كما هو متوقع، تحقق من أن خلايا العمود C مهيأة فعليًا كتواريخ وليس كنص، وقم بتعديل رمز التنسيق في الصيغة عند الحاجة. إذا كان لديك تنسيقات تاريخ مختلطة أو مخصصة، فكر في استخدام طريقة صيغة أكثر قوة كما هو موضح أدناه.
حل ماكرو VBA (تمييز الصفوف إذا كانت الخلية تحتوي على تاريخ)
لمجموعات البيانات الكبيرة أو السيناريوهات المتقدمة (مثل تمييز العديد من الصفوف، التعامل مع هياكل أوراق العمل المعقدة، أو أتمتة المهام المتكررة)، يمكنك استخدام ماكرو VBA. يقوم الكود التالي VBA بفحص الخلايا في عمود معين للقيم التاريخية وتمييز الصف بأكمله إذا كانت الخلية تحتوي على تاريخ. هذا النهج مستقل عن تنسيق الخلية ومرن للغاية لمعالجة كميات كبيرة.
السيناريوهات المطبقة: مثالية للجداول الكبيرة أو المعقدة، أو عندما تريد أتمتة كشف التاريخ والتنسيق عبر أوراق عمل أو نطاقات متعددة.
المزايا: يمكن معالجة آلاف الصفوف بكفاءة؛ يسمح بقواعد تمييز مخصصة ويمكن العمل عبر نطاقات متعددة.
القيود: يتطلب تمكين الماكرو ومعرفة أساسية باستخدام VBA.
التعليمات:
- اضغط على Alt + F11 لفتح محرر Visual Basic for Applications.
- في محرر VBA، انقر فوق إدراج > وحدة.
- انسخ والصق الكود التالي في نافذة الوحدة:
Sub HighlightRowsWithDate() Dim ws As Worksheet Dim rng As Range, cell As Range Dim lastRow As Long Dim dateCol As String On Error Resume Next xTitleId = "KutoolsforExcel" Set ws = Application.ActiveSheet ' Specify the column to check for dates dateCol = "C" lastRow = ws.Cells(ws.Rows.Count, dateCol).End(xlUp).Row Set rng = ws.Range(dateCol & "2:" & dateCol & lastRow) For Each cell In rng If IsDate(cell.Value) Then cell.EntireRow.Interior.Color = RGB(255, 255, 120) ' Light yellow End If Next cell End Sub
- أغلق نافذة محرر VBA.
- ارجع إلى Excel واضغط على مفتاح F5 أو انقر تشغيل لتنفيذ.
سيقوم الماكرو بتمييز كل صف في ورقة العمل حيث الخلية المقابلة في العمود C تحتوي على تاريخ صالح. يمكنك تعديل السطر dateCol = "C"
في الماكرو إذا كانت عمود التاريخ مختلف.
نصيحة: دائمًا احفظ مصنفك قبل تشغيل الماكرو لمنع التغييرات غير المرغوب فيها، وتأكد من تمكين الماكرو في إعدادات Excel الخاصة بك.
الأخطاء الشائعة:
- إذا لم يحدث شيء، تأكد من أنك قد قمت بتحديد عمود التاريخ بشكل صحيح وأن البيانات تبدأ من الصف الثاني.
- إذا ظهر خطأ، تحقق من أن ورقة العمل نشطة ولديك الأذونات الصحيحة.
لإزالة التمييز، يمكنك تحديد النطاق ذي الصلة واستخدام ميزة مسح التنسيقات تحت علامة تبويب الصفحة الرئيسية.
حل صيغة Excel (فحص قوي باستخدام ISNUMBER)
في كثير من الحالات، الاعتماد فقط على تنسيق الخلية يمكن أن يُخطئ في تحديد التواريخ، خاصة مع إعدادات إقليمية مختلفة، تنسيقات مخصصة، أو إذا تم تخزين التواريخ كنص يبدو مثل تاريخ. لحل هذا، يمكنك استخدام منطق صيغة Excel الأكثر قوة مثل ISNUMBER
في قاعدة التنسيق الشرطي الخاصة بك. على الرغم من أن Excel لا يوفر وظيفة ISDATE
مضمنة، فإن استخدام هذه الصيغ يمنحك توافقًا أوسع.
السيناريوهات المطبقة: يوصى بها عندما قد تحتوي بياناتك على تنسيقات تاريخ مختلطة، تتضمن إدخالات نصية، أو إذا كنت تريد اكتشاف قيم التاريخ بغض النظر عن التنسيق المحدد.
المزايا: أكثر دقة عبر مجموعات البيانات المتنوعة وأقل حساسية لإعدادات المستخدم أو النظام.
القيود: قد يتطلب تعديل الصيغة حسب تخطيط البيانات الخاص بك.
التعليمات:
1. حدد نطاق الصفوف التي تريد تمييزها. انتقل إلى الصفحة الرئيسية > التنسيق الشرطي > قاعدة جديدة.
2. اختر استخدام صيغة لتحديد الخلايا المراد تنسيقها.
3. أدخل الصيغة التالية في مربع الصيغة (بافتراض أنك تريد التمييز بناءً على العمود C، ويبدأ التحديد الخاص بك في الصف الثاني):
=ISNUMBER(C2)
تتحقق هذه الصيغة مما إذا كانت القيمة في C2 معترف بها كقيمة تاريخ عددية بواسطة Excel. يمكنك تغيير C2 إذا كان تاريخك في عمود آخر.
4. انقر فوق تنسيق. حدد لون التمييز المطلوب، ثم انقر موافق لتطبيق.
نصائح عملية:
- تأكد من أن الصيغة تستخدم المراجع النسبية الصحيحة (مثل
C2
) لتتناسب مع تحديدك. - اسحب أو انسخ القاعدة لتغطية نطاق الصف المطلوب.
- إذا كان عمود التاريخ يختلف في الموقع، حدّث الصيغة وفقًا لذلك.
- هذه الطريقة تتجنب مشكلات تنسيق المناطق وتلتقط المزيد من الإدخالات "التي تبدو كتاريخ"، ولكن قد تبرز أرقام ليست تواريخ فعلية إذا كانت ورقة العمل الخاصة بك تحتوي على رموز رقمية.
استكشاف الأخطاء وإصلاحها: إذا لم يتم تمييز الصفوف المتوقعة، تحقق من تنسيقات الخلايا أو المراجع الصيغة، وتأكد من أن الخلايا لا تحتوي على نص غير معروف.
اقتراحات الملخص: عند اتخاذ قرار حول كيفية تمييز الصفوف بناءً على خلايا التاريخ، ضع في اعتبارك طبيعة بياناتك وكيفية إدخال التواريخ. بالنسبة للجداول الصغيرة ذات التنسيق المتسق، التنسيق الشرطي باستخدام CELL("format", ...)
سريع. إذا كانت تواريخك قد يتم إدخالها كنص أو تتبع تنسيقات مختلفة، استخدم النهج القائم على الصيغة القوية. لأوراق العمل الكبيرة جدًا أو المعقدة، توفر الأتمتة باستخدام VBA أكبر قدر من المرونة.
أفضل أدوات زيادة الإنتاجية لمجموعة Office
عزز مهاراتك في Excel مع Kutools لـ Excel، وتمتع بكفاءة غير مسبوقة. يقدم Kutools لـ Excel أكثر من300 ميزة متقدمة لتعزيز الإنتاجية وتوفير وقت الحفظ. انقر هنا للحصول على الميزة التي تحتاجها أكثر...
Office Tab يجلب تجربة التبويبات إلى Office، ويجعل عملك أسهل بكثير
- فعّل تحرير وقراءة المستندات عبر التبويبات في Word وExcel وPowerPoint
- افتح وأنشئ مستندات متعددة في تبويبات جديدة ضمن نفس النافذة، بدلاً من فتحها في نوافذ جديدة.
- يمنحك زيادة إنتاجية تصل إلى50% ويوفر عليك مئات النقرات يومياً!