تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
مطلوب كود حساب العمر بالسنة والشهر واليوم
#2
السلام عليكم  ،،  

هذا كود كتبته قبل فتره  طويله و لا اعلم هل نتائجه مضمونه  100%  دائما او لا  ،،  لكنه يفي بالغرض  ، على العموم  الـ  function  تسمح لك بالحساب الميلادي و الهجري فقط  قم بتحديد  نوع الكاليندر  أما ميلادي أو أم القرى  و الكود مشروح ، لا اعتقد انه سيكون صعب عليك فهمه :


كود :
    ''' <summary>
    ''' نوع الكاليندر المستخدم في الحساب
    ''' </summary>
    ''' <remarks></remarks>
    Enum CalenderType
        Gregorian = 1
        UmAlQura = 0
    End Enum

    ''' <summary>
    ''' حساب العمر
    ''' </summary>
    ''' <param name="birthdate">تاريخ الميلاد</param>
    ''' <param name="oCalenderType">حساب العمر بالهجري او الميلادي</param>
    ''' <param name="onlyReturnYear">ارجاع فقط السنة</param>
    ''' <returns></returns>
    ''' <remarks></remarks>
    Public Function calculateAge(ByVal birthdate As DateTime, Optional ByVal oCalenderType As CalenderType = CalenderType.Gregorian, Optional ByVal onlyReturnYear As Boolean = True, Optional ByVal showFullTextAsEn As Boolean = False) As String

        Dim cultureCalendar As Object

        If oCalenderType = CalenderType.Gregorian Then
            cultureCalendar = New System.Globalization.UmAlQuraCalendar
        Else
            cultureCalendar = New System.Globalization.GregorianCalendar
        End If

        Dim birthDay As Integer = 0
        Dim birthMonth As Integer = 0
        Dim birthYear As Integer = 0

        birthDay = cultureCalendar.GetDayOfMonth(Now) - cultureCalendar.GetDayOfMonth(birthdate)
        birthMonth = cultureCalendar.GetMonth(Now) - cultureCalendar.GetMonth(birthdate)
        birthYear = cultureCalendar.GetYear(Now) - cultureCalendar.GetYear(birthdate)
        If birthDay < 0 Then
            birthDay = 30 + birthDay
            birthMonth = birthMonth - 1
        End If
        If birthMonth < 0 Then
            birthMonth = birthMonth + 12
            birthYear = birthYear - 1
        End If

        Dim birthFull As String = ""

        If onlyReturnYear = True Then
            birthFull = birthYear.ToString
        Else
            If showFullTextAsEn = True Then
                birthFull = String.Format("{0} years , {1} months , {2} days", birthYear.ToString, birthMonth.ToString, birthDay.ToString) '   (birthDay.ToString + "/" + birthMonth.ToString + "/" + )
            Else
                birthFull = String.Format("{0} سنة و {1} أشهر و {2} أيام.", birthYear.ToString, birthMonth.ToString, birthDay.ToString) '   (birthDay.ToString + "/" + birthMonth.ToString + "/" + )
            End If

        End If

        Return birthFull
    End Function



و اذا احد من الاخوه لديه  تعديل  أو  ملاحظه أو تحسين لعملية الحساب أن يضعه  هنا
اسم معرفي : محمد يحيى
الرد }}}
تم الشكر بواسطة:


الردود في هذا الموضوع
RE: مطلوب كود حساب العمر بالسنة والشهر واليوم - بواسطة myalsailamy - 01-11-16, 11:44 PM

المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
Wink [كود] تحويل العمر الى تاريخ ميلاد سعود 2 4,201 04-05-18, 08:22 PM
آخر رد: YousefOkasha
  [VB.NET] مطلوب كودات تصدير البيانات الناتجه من تكس بوكس الى الاكسل abdulla omran 0 2,534 18-11-17, 10:26 PM
آخر رد: abdulla omran
  [VB.NET] اريد مساعدة كود يتم حسب كم حساب تم انشئاه الى الان moka 0 1,789 09-07-17, 11:31 PM
آخر رد: moka
Information [كود] مطلوب كود لجعل التكست بوكس يكتب عربي فقط Mostafa Yousry 2 3,571 07-12-15, 05:53 AM
آخر رد: Mostafa Yousry

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم