وظيفة VBA DatePart | كيف يتم إرجاع الجزء المحدد من التاريخ؟

وظيفة Excel VBA DatePart

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

بناء الجملة

فيما يلي بناء جملة الدالة DatePart:

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

استخدم إعداد NLS API

vbSunday (افتراضي) ، vbMonday ، vbTuesday ، vbWednesday ، vbThursday vbFriday ، vbSaturday.
  • الأسبوع الأول: على غرار المعلمة العليا ، هذه أيضًا معلمة اختيارية. يصف هذا الأسبوع الأول من العام. يمكن أيضًا تجاهل هذه المعلمة. إذا تم تجاهل هذه المعلمة ، فإنها تفترض أن الأول من يناير هو الأسبوع الأول من السنة. إذا كنت ترغب في تغيير ذلك ، فيمكن استخدام هذه المعلمة.

    قد تتكون هذه الحجة من القيم التالية.

    vbUseSystem ، vbFirstJan1 ، vbFirstFourDays ، vbFirstFullWeek.

بعد إعطاء جميع المعلمات ، سيعيد Datepart () القيمة الرقمية مثل التاريخ بأكمله أو السنة أو الشهر أو ربع السنة ، وما إلى ذلك. ومن ثم سيكون نوع الإرجاع لهذه الوظيفة قيمة رقمية.

كيفية استخدام دالة DatePart في VBA؟

يمكنك تنزيل قالب إكسل VBA DatePart هنا - قالب إكسل VBA DatePart

مثال 1

المثال الأول هو عرض التاريخ الكامل وربع الشهر أيضًا.

لتحقيق ذلك ، نحتاج إلى كتابة بعض التعليمات البرمجية في Visual Basic ، لذلك Goto Developer Tab ثم النقر فوق Visual Basic ثم سيتم فتح نافذة.

في تلك النافذة اكتب الرمز كما هو موضح أدناه.

رمز:

 Sub date_Datepart () خافت mydate كمتغير mydate = # 12/25/2019 # MsgBox mydate MsgBox DatePart ("q"، mydate) 'يعرض ربع نهاية Sub 

في هذا المثال ، استخدمنا وظيفة Datepart لعرض التاريخ وجزءًا من التاريخ يمثل ربع التاريخ. يعرض هذا ربع السنة هو التاريخ القادم.

إذا قمنا بتصحيح الكود ، فسيتم عرض التاريخ كتاريخ كامل لأول مرة عندما ينفذ الكود "Msgbox mydate" لأن التاريخ العشوائي مخصص لمتغير "mydate".

بعد ذلك ، نعرض ربع السنة الذي يقع تحت هذا التاريخ.

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

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

المثال رقم 2

في هذا المثال ، سأدخل التاريخ يدويًا في وقت التشغيل.

رمز:

Sub date1_datePart () خافت اليوم التاريخ كتاريخ 'قم بتعريف المتغيرات. Dim Msg TodayDate = InputBox ("أدخل تاريخًا:") Msg = "ربع:" & DatePart ("q"، TodayDate) MsgBox Msg End Sub

هنا في هذا المثال ، نحاول الحصول على التاريخ يدويًا في وقت التشغيل. الرمز "TodayDate = InputBox (" أدخل تاريخًا: ")" يشير هذا السطر إلى أنه يمكن إدخال التاريخ يدويًا ،

بعد إدخال التاريخ يدويًا ، يعرض ربع التاريخ في مربع رسالة. يمكن أن يظهر هذا في لقطة الشاشة أدناه.

نظرًا لأن شهر يونيو في الربع الثاني ، فإن هذا يعرض الربع الثاني كما هو موضح في لقطة الشاشة أعلاه.

المثال رقم 3

في هذا المثال ، سيتم ملء جميع القيم في الخلايا.

رمز:

 Private Sub Workbook_Open () Dim DummyDate As Date DummyDate = ActiveSheet.Cells (2، 2) ActiveSheet.Cells (2، 2) .Value = Day (DummyDate) ActiveSheet.Cells (3، 2) .Value = Hour (DummyDate) ActiveSheet .Cells (4، 2) .Value = Minute (DummyDate) ActiveSheet.Cells (5، 2) .Value = شهر (DummyDate) ActiveSheet.Cells (6، 2) .Value = Weekday (DummyDate) End Sub 

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

على سبيل المثال ، في لقطة الشاشة أعلاه ،

يتم إدخال اليوم في الخلايا (2 ، 2) من ورقة إكسل. ومن ثم تمت كتابة الكود كـ "ActiveSheet.Cells (2، 2) .Value = Day (DummyDate)".

قم بتشغيل الكود باستخدام المفتاح F5 أو يدويًا وستظهر النتيجة كما هو موضح أدناه.

يتم بشكل افتراضي أخذ تاريخ اليوم ويتم عرضه على أنه 30 في (2،6) خلية.

وبالمثل بالنسبة لجميع البيانات الأخرى ، يمكن أيضًا ملؤها.

استخدام دالة DatePart

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

أشياء للذكرى

  • لا يمكن استخدام هذه الوظيفة إلا كوظيفة VBA. في Excel العادي ، لا يمكن استخدام هذا.
  • يمكن إعطاء التواريخ التي يتم تقديمها كقيمة في هذه الوظيفة بأي تنسيق مثل تنسيق mm-dd-yyyy أو تنسيق DD-MM-YYYY إلخ.
  • ستفصل هذه الوظيفة جميع القيم بشكل منفصل مثل التاريخ أو الشهر أو السنة أو الوقت أيضًا في الساعة والدقيقة والثانية أيضًا.
  • تم تنظيم هذا ضمن وظائف التاريخ والوقت في VBA من Microsoft Excel.

$config[zx-auto] not found$config[zx-overlay] not found