وظيفة VBA DateSerial | كيفية استخدام وظيفة DateSerial؟ (أمثلة)

وظيفة Excel VBA DateSerial

ترجع الدالة DateSerial في VBA التاريخ من القيم التي يوفرها المستخدمون. نحتاج إلى توفير ما هو العام ، وما هو اليوم ، وما هو الشهر. ستستند النتيجة إلى تنسيق التاريخ لنظامك.

يوجد أدناه بناء جملة الدالة DATESERIAL .

# 1 - السنة: نحتاج إلى إدخال عدد صحيح كما هو العام؟ أثناء توفير عدد صحيح ، نحتاج إلى مراعاة الأشياء أدناه.

  • يمكننا توفير أرقام من 0 إلى 9999.
  • سيتم التعامل مع الأرقام المكونة من رقمين ورقمين من 0 إلى 99 من عام 1930 إلى عام 2029.
  • سيتم طرح الرقم الصحيح السالب من عام 2000. على سبيل المثال ، إذا قمت بتوفير -1 فإن النتيجة ستكون 1999 بسبب 2000-1 = 1999.

# 2 - الشهر: نحتاج إلى إدخال عدد صحيح كما هو الشهر؟ أثناء إدخال هذا الرقم ، نحتاج إلى مراعاة الأشياء أدناه.

  • يمكننا توفير الأرقام من 1 إلى 12 فقط.
  • إذا كانت قيمة العدد الصحيح المقدَّمة تساوي 0 ، فإن هذا سيمثل شهر "ديسمبر" من العام السابق.
  • إذا كانت قيمة العدد الصحيح المقدم هي -1 ، فإن هذا سيمثل شهر "نوفمبر" من العام السابق. مثل هذا عندما تزداد القيمة السالبة ، فإنها ستظل تمثل شهر السنة المتخلفة.
  • إذا كان الرقم المقدم أكثر من 12 ، أي إذا كان الرقم 13 ، فسيكون هذا يمثل شهر "يناير" من العام التالي ، وإذا كان الرقم 14 فسيتم التعامل معه على أنه شهر "فبراير" من العام التالي.

# 3 - اليوم: نحتاج إلى إدخال عدد صحيح كما هو اليوم؟ أثناء إدخال هذا الرقم ، نحتاج إلى مراعاة الأشياء أدناه.

  • يمكننا إدخال أعداد صحيحة من 1 إلى 31 لأيام الشهر الحالي.
  • إذا كان الرقم 0 فإنه سيمثل اليوم الأخير من الشهر السابق.
  • إذا كان الرقم -1 فإنه سيمثل اليوم الأخير الثاني من الشهر السابق.
  • إذا قدمت في اليوم الأخير من هذا الشهر +1 ، فسيمثل هذا اليوم الأول من الشهر التالي. على سبيل المثال ، إذا كان اليوم الأخير من شهر أغسطس هو 31 ، وإذا قدمت اليوم 31 + 1 ، فسوف يمثل اليوم الأول من شهر سبتمبر.

كيفية استخدام وظيفة DATESERIAL في VBA؟

يمكنك تنزيل قالب Excel VBA DateSerial هنا - قالب Excel لـ VBA DateSerial

مثال 1

لاستخدام وظيفة DATESERIAL ، ابدأ في كتابة كود الماكرو.

الخطوة 1: بدء الإجراء الفرعي

أولاً ، قم بإنشاء إجراء فرعي لـ VBA كما هو موضح أدناه.

الخطوة 2: إعلان المتغير

أعلن الآن عن متغير على أنه DATE.

الخطوة 3: قم بتعيين دالة DateSerial لهذا المتغير.

الآن لهذا المتغير ، قم بتعيين وظيفة DATESERIAL.

الخطوة 4: أدخل الآن قيم السنة والشهر واليوم في دالة DateSerial

لتوريد عام 2019 ، لتوريد شهر 08 ، ولإمداد يوم 05.

الخطوة 5: إظهار النتيجة في مربع الرسائل

اعرض الآن نتيجة المتغير "تاريخ" في مربع الرسالة.

رمز:

 الخيار صريح Sub DateSerial_Example1 () خافت Mydate كتاريخ Mydate = DateSerial (2019، 8، 5) MsgBox Mydate End Sub 

الخطوة 6: قم بتشغيل الكود

الآن قم بتشغيل هذا الرمز لمعرفة التاريخ أدناه.

النتيجة تقول "8/5/2019". في تنسيق تاريخ النظام الخاص بي في شكل "MM-DD-YYYY" ، ولهذا السبب تكون النتيجة أيضًا بنفس التنسيق.

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

رمز:

 الخيار صريح Sub DateSerial_Example1 () خافت Mydate كتاريخ Mydate = DateSerial (2019، 8، 5) تنسيق MsgBox (Mydate، "DD-MMM-YYYY") End Sub 

سيؤدي هذا إلى تطبيق التنسيق في "DD-MMM-YYYY" والنتيجة هي كما يلي.

المثال رقم 2

يمكننا أيضًا إعلان المتغيرات وتوفير القيم لتلك المتغيرات. للحصول على مثال ، انظر إلى الكود أدناه.

رمز:

 تاريخ فرعي ") End Sub 

بدلاً من توفير السنة والشهر واليوم مباشرةً لوظيفة DATESERIAL ، أعلنا عن المتغيرات وقمنا بتعيين قيم لها. ثم في وقت لاحق قمنا بتوفير المتغيرات لوظيفة DATESERIAL.

هذه هي الطريقة التي يمكننا بها الاستفادة من المتغيرات في VBA لتخزين القيم.

المثال رقم 3

الآن سنقوم بتجربة العام. سأقوم بتعيين قيمة السنة على أنها 1 وأرى النتيجة.

الأرقام الفردية والمزدوجة في YEAR تمثل سنة من 1930 إلى 2029. لذا فإن 01 تعني 2001 ، 02 تعني 2002 وهكذا.

الآن دعنا نغير رقم الشهر إلى 0 ونرى النتيجة.

انظر إلى الكود هنا ، السنة هي 2019 ، والشهر 0. لكن انظر إلى النتيجة التي تقول 05-ديسمبر -2019 ، في حين أن سنة التزويد هي 2019 تقول 2018 ، أي العام السابق.

هذا لأنه نظرًا لأننا قمنا بتزويد الشهر كـ 0 وظيفة DATESERIAL تستغرق من الشهر إلى الشهر الأخير من العام السابق وتغير العام أيضًا وفقًا لذلك.

على هذا النحو ، جرب أرقامًا مختلفة لترى تأثير الوظيفة.

أشياء للذكرى

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

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