منتقي تاريخ Excel | كيفية إدراج منتقي التاريخ (التقويم) في إكسيل؟

كيفية إدراج منتقي التاريخ في إكسيل؟

لإدراج التقويم المنسدلة ، سنستخدم عنصر تحكم ActiveX  وهو "Microsoft Date and Time Picker Control 6.0 (SP6)" .

يمكنك تنزيل قالب Excel منتقي التاريخ هذا هنا - منتقي التاريخ قالب Excel

لنفترض أنه يتعين علينا الاحتفاظ ببيانات لموظفي الشركة. هناك عدة مجالات مثل

  • كود Emp
  • اسم العميل
  • تاريخ الانضمام إلى Emp
  • قسم التمكين

لإدخال البيانات في MS Excel ، قمنا بإنشاء التنسيق التالي.

لإدخال تاريخ الانضمام إلى Emp ، نحتاج إلى إنشاء تقويم منسدل بحيث يسهل على المستخدم إدخال تواريخ الانضمام.

لإنشاء تقويم منسدل ، الخطوات معطاة أدناه - 

نحتاج إلى إدراج "عنصر تحكم ActiveX" يسمى "Microsoft Date and Time Picker Control 6.0 (SP6)" . للإدراج ، سنستخدم الأمر "إدراج" ضمن مجموعة "عناصر التحكم" في "المطور"

إذا كانت علامة التبويب "المطور" غير مرئية ، فإليك الخطوات التي يجب اتباعها لإظهارها.

  • الخطوة 1: ضمن قائمة "ملف" ، اختر "خيارات"

  • الخطوة 2: سيتم فتح مربع حوار باسم "خيارات Excel" . اختر "تخصيص الشريط" من الحافة اليسرى لمربع الحوار. مربع اختيار علامة التبويب "المطور" وانقر فوق "موافق" .

  • الخطوة 3: الآن يمكننا رؤية علامة التبويب "المطور" في آخر الشريط.

  • الخطوة 4: اختر "المزيد من عناصر التحكم" من عناصر تحكم ActiveX.

  • الخطوة 5: اختر "Microsoft Date and Time Picker Control 6.0 (SP6)" من القائمة وانقر فوق "موافق" .

  • الخطوة 6: انقر في أي مكان على ورقة العمل لإنشاء التقويم المنسدل.

  • الخطوة 7: انقر بزر الماوس الأيمن فوق "منتقي التاريخ" واختر "خصائص" من القائمة.

  • خطوة 8: تغيير القيمة من 'خطأ' إلى 'صحيح' عن 'مربع' الملكية بحيث يمكن أيضا أن تقبل أن قيم فارغة. أغلق مربع الحوار "خصائص" .

  • الخطوة 9: انقر بزر الماوس الأيمن على منتقي التاريخ مرة أخرى واختر "عرض الرمز" من القائمة السياقية.

  • الخطوة 10: في "Visual Basic Editor" ، يمكننا أن نرى أن بعض التعليمات البرمجية مكتوبة بالفعل. استبدل الكود بالرمز التالي.

رمز:

 Private Sub Worksheet_SelectionChange (ByVa l Target As Range) مع Sheet1.DTPicker1 .Height = 20 .Width = 20 If Not Intersect (Target ، Range ("C: C")) لا شيء إذًا .Visible = True .Top = Target.Top .Left = Target.Offset (0، 1) .Left .LinkedCell = Target.Address Else .Visible = False End If End With End Sub 

  • الخطوة 11: العبارة الأولى في الكود تخبر برنامج التحويل البرمجي MS Excel بتشغيل الكود كلما تم تحديد خلية جديدة (تم تغيير التحديد). يتم إرسال الخلية المحددة إلى الإجراء الفرعي باسم "الهدف" .
 تغيير ورقة العمل الفرعية الخاصة (الهدف حسب القيمة كنطاق)
  • الخطوة 12: تحدد هذه العبارات ارتفاع وعرض منتقي التاريخ إلى 20 نقطة في Excel. يمكن ملاحظة أننا استخدمنا عامل التشغيل "With" حتى لا نحتاج إلى الرجوع إلى DTPicker1 مرارًا وتكرارًا.
 باستخدام Sheet1.DTPicker1. الارتفاع = 20. العرض = 20
  • الخطوة 13: تحدد عبارة "If" التالية المعايير التي تشير إلى أنه إذا تم تحديد أي خلية في العمود "C" ، فسيتم رؤية منتقي التاريخ فقط. لقد استخدمنا وظيفة "التقاطع" حيث تتحقق هذه الوظيفة مما إذا كنا قد حددنا أي خلية في العمود C ، ثم ستعيد هذه الوظيفة العنوان وإلا ستكون القيمة فارغة.
 إذا لم يتقاطع (الهدف ، النطاق ("C: C")) لا شيء إذًا .Visible = True 
  • الخطوة 14: تم تعيين الخاصية "Top" الخاصة بـ Date Picker على أنها تساوي قيمة الخاصية "Top" للخلية المحددة. هذا يعني أن هذا سوف يتماشى مع الحد العلوي للخلية المحددة.
.Top = الهدف
  • الخطوة 15: يعين هذا البيان الخاصية اليسرى لـ Date Picker على أنها مساوية لخاصية الخلية اليمنى التالية للخلية المحددة (مسافة الحد الأيسر للعمود D من أقصى يسار ورقة العمل). للحصول على مرجع الخلية اليمنى التالية ، استخدمنا وظيفة "Offset" مع 0 كوسيطة صف و 1 كوسيطة عمود حيث سيحصل هذا على مرجع للخلية في العمود التالي.
. اليسار = الهدف. الإزاحة (0 ، 1). اليسار
  • الخطوة 16: يربط هذا البيان منتقي التاريخ بالخلية الهدف بحيث يتم تحديد أي قيمة في التقويم المنسدل المعروض في الخلية.
.LinkedCell = Target.Address
  • الخطوة 17: تخبر عبارة "Else" المترجم عدم عرض منتقي التاريخ عند تحديد أي خلية باستثناء تلك الموجودة في العمود C.
آخر مرئي = خطأ
  • الخطوة 18: في النهاية ، نغلق "If"
 إنهاء إذا 
  • الخطوة 19: أخيرًا ، نحتاج إلى إغلاق "بـ"
 انتهت ب 
  • الخطوة 20: الآن ، سينتهي الإجراء الفرعي.
 End Sub 

تأكد من حفظ الملف بامتداد ".xlsm" لأنه يحفظ رمز VBA الذي كتبناه وسنكون قادرين على تشغيل هذا الرمز عند تحديد أي خلية في العمود C.

الآن عندما نحدد أي خلية في العمود "C" ، يمكننا أن نرى تقويمًا منسدلاً في الزاوية اليمنى العليا للخلية المحددة. يمكننا فتح التقويم المنسدل بالنقر فوق رمز السهم لأسفل.

نحتاج إلى النقر فوق أي تاريخ في التقويم في الشهر المحدد لإدخال ذلك التاريخ في الخلية المحددة.

يمكننا تغيير الشهر إلى السابق أو التالي باستخدام زر السهم الموجود على الجانب الأيسر والأيمن من التقويم.

يمكننا أيضًا النقر فوق الشهر لاختيار شهر من القائمة المنسدلة.

يمكننا أيضًا تغيير السنة بالنقر فوق العام ثم استخدام الأسهم لأعلى ولأسفل لاختيار المطلوب.

أشياء للذكرى

  • لا يتوفر "Microsoft Date and Time Picker Control 6.0 (SP6)" للإصدار 64 بت من MS Excel.
  • بعد كتابة كود VBA ، نحتاج إلى حفظ الملف بامتداد ".xlsm" (مصنف Excel Macro-Enabled) وإلا فلن يتم تشغيل رمز VBA.