اذهب الي المحتوي
أوفيسنا

الردود الموصى بها

قام بنشر

السلام عليكم

هل في كود استطيع من خلاله ان اكتب اسم الشهر والسنه ويظهر لي عدد الايام في الشهر.

02/2005 = 28 يوم

وشكرا

alawi

:rol:

قام بنشر

السلام عليكم

Sub GetMonthDays()
  Dim myDate As Date
  Dim MonthDays As Byte
  
  myDate = #2/25/2001#
  MonthDays = DateSerial(Year(myDate), Month(myDate) + 1, 1) _
            - DateSerial(Year(myDate), Month(myDate), 1)
  MsgBox MonthDays
End Sub

تحياتي .

قام بنشر

السلام عليكم

ويمكن اختصاره كالتالي :

Sub GetMonthDays()
  Dim myDate As Date
  Dim MonthDays As Byte

  myDate = #2/25/2001#
  MonthDays = Day(DateSerial(Year(myDate), Month(myDate) + 1, 1) - 1)
  
  MsgBox MonthDays
End Sub

تحياتي .

قام بنشر

شكرا ابو هادي على هذا الرد السريع

واتمنى ان اعرف اين اسجل الكود .

وشكرا

alawi

قام بنشر

السلام عليكم

هل الشهر والسنة على شكل تاريخ أو على شكل أرقام منفصلة السنة لوحدها والشهر لوحده أم على شكل تنسيق نصي ؟

بعد ردكم سوف أقوم بتحويل الكود إلى دالة ، حيث يمكن استدعاؤها مثل أي دالة أصلية Built-in Function واستخدامها في النماذج والتقارير والإستعلامات .

تحياتي .

قام بنشر

شكرا ابو هادي على الرد

وبخصوص سؤالك وهو انه على شكل تاريخ وهو بهذه الطريقه 12/2005 .

شكرا

alawi

:pp:

قام بنشر

السلام عليكم

أنشئ موديول والصف به كود الدالة التالي :

Function GetMonthDays(ByVal InDate As Variant) As Variant
  On Error Resume Next

  If IsNumeric(InDate) Then InDate = CDate(InDate)
  Select Case VarType(InDate)
    Case vbDate
      GetMonthDays = Day(DateSerial(Year(InDate), Month(InDate) + 1, 1) - 1)
    Case vbString
      If InDate Like "####[/-]##" Then
        GetMonthDays = Day(DateSerial(Left(InDate, 4), Mid(InDate, 6) + 1, 1) - 1)
      ElseIf InDate Like "##[/-]####" Then
        GetMonthDays = Day(DateSerial(Mid(InDate, 4), Left(InDate, 2) + 1, 1) - 1)
      End If
  End Select
End Function
حيث يمكنك استدعاؤها بأربعة أشكال كالتالي :
Sub Test()
  MsgBox GetMonthDays(Date)
  MsgBox GetMonthDays(38363)
  MsgBox GetMonthDays("2005/01")
  MsgBox GetMonthDays("01-2005")
End Sub

تحياتي .

قام بنشر

السلام عليكم

موديول/Module يعني وحدة نمطية .

أوضح أين تريد أن تحصل على النتيجة ، هل تريدها في نموذج أم تقرير أم استعلام ؟

وإذا كانت في نموذج أو تقرير ، أذكر إسم النموذج أو التقرير وإسم مربع النص الذي سيظهر النتيجة .

ابدأ بنسخ الكود من هنا ثم قم بإنشاء وحدة نمطية باستخدام أمر جديد ثم الصق الكود ولا تنسى حفظه .

تحياتي .

انشئ حساب جديد او قم بتسجيل دخولك لتتمكن من اضافه تعليق جديد

يجب ان تكون عضوا لدينا لتتمكن من التعليق

انشئ حساب جديد

سجل حسابك الجديد لدينا في الموقع بمنتهي السهوله .

سجل حساب جديد

تسجيل دخول

هل تمتلك حساب بالفعل ؟ سجل دخولك من هنا.

سجل دخولك الان
  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information