كيفية استخدام وظيفة أيام الأسبوع في vba (مع مثال)
يمكنك استخدام الدالة Weekday في VBA للحصول على يوم الأسبوع (كعدد صحيح) من تاريخ معين.
إليك طريقة شائعة لاستخدام هذه الوظيفة عمليًا:
Sub FindWeekday()
Dim i As Integer
For i = 2 To 9
Range(" B " & i) = WorksheetFunction.Weekday(Range(" A " & i))
Next i
End Sub
سيبحث هذا الماكرو المحدد عن يوم الأسبوع (كعدد صحيح) لكل تاريخ في النطاق A2:A9 ويعرض النتائج في النطاق B2:B9 .
لاحظ أن الأعداد الصحيحة التالية تتوافق مع كل يوم من أيام الأسبوع:
- 1 : الأحد
- 2 :الاثنين
- 3 : الثلاثاء
- 4 : الاربعاء
- 5 : الخميس
- 6 : الجمعة
- 7 : السبت
يوضح المثال التالي كيفية استخدام وظيفة “أيام الأسبوع” عمليًا.
ملاحظة : إذا كنت تفضل إرجاع يوم الأسبوع كاسم، فيجب عليك استخدام وظيفة WeekdayName بدلاً من ذلك.
مثال: استخدم وظيفة “أيام الأسبوع” في VBA للعثور على يوم من أيام الأسبوع
لنفترض أن لدينا عمود التاريخ التالي في Excel:
لنفترض أننا نريد الحصول على يوم من أيام الأسبوع (كعدد صحيح) لكل تاريخ وعرض النتائج في العمود B.
يمكننا إنشاء الماكرو التالي للقيام بذلك:
Sub FindWeekday()
Dim i As Integer
For i = 2 To 9
Range(" B " & i) = WorksheetFunction.Weekday(Range(" A " & i))
Next i
End Sub
عندما نقوم بتشغيل هذا الماكرو، نحصل على الإخراج التالي:
يعرض العمود B يوم الأسبوع (كعدد صحيح) لكل تاريخ في العمود A.
على سبيل المثال:
- 1/1/2023 هو يوم أحد، لذا ترجع الدالة “أيام الأسبوع” 1 .
- 4/1/2023 هو يوم أربعاء، لذا ترجع الدالة “أيام الأسبوع” 4 .
- 23/02/2023 هو يوم خميس، لذا ترجع دالة أيام الأسبوع 5 .
وما إلى ذلك وهلم جرا.
ملاحظة : يمكنك العثور على الوثائق الكاملة لوظيفة VBA Weekday هنا .
مصادر إضافية
تشرح البرامج التعليمية التالية كيفية تنفيذ المهام الشائعة الأخرى في VBA:
كيفية مقارنة التواريخ في VBA
كيفية تحويل التاريخ إلى رقم الأسبوع في VBA
كيفية حساب الأيام بين تاريخين في VBA