الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

كيف أعرف التاريخ من خلال عدد السنوات والأشهر والأيام؟

بدأه sscvbnm في 1 يناير 2012 · 4 رد · 637 مشاهدة · في Microsoft Visual Basic.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله وبركاته

أريد طريقة أعرف فيها تاريخ الميلاد من خلال إدخال عدد السنوات والأشهر والأيام

فلو أدخل المستخدم 10 سنوات 3 أشهر 20 يوم؛ يظهر له التاريخ 10/7/2001 مثلاً

عندي هذا الكود للعملية العكسية، كيف أعكسه؟

 Function Calcdate(ByVal vDate1 As Date, ByVal vdate2 As Date) As String
        On Error Resume Next
        Dim vYears As Integer, vMonths As Integer, vDays As Integer
        vMonths = DateDiff("m", vDate1, vdate2)
        vDays = DateDiff("d", DateAdd("m", vMonths, vDate1), vdate2)
        If vDays < 0 Then
            vMonths = vMonths - 1
            vDays = DateDiff("d", DateAdd("m", vMonths, vDate1), vdate2)
        End If
        vYears = vMonths \ 12
        vMonths = vMonths Mod 12
        NY.Value = vYears
        NM.Value = vMonths
        ND.Value = vDays
    End Function

جزاكم الله خيراً

قال صلى الله عليه وسلم: من قال إذا أصبح: رضيت بالله ربا وبالإسلام دينا وبمحمد نبيا فأنا الزعيم لآخذن بيده حتى أدخله الجنة. الصحيحة/2686

#2

وعليكم السلام ورحمه الله وبركاته ..

اتفضل أخوي

Function NEWDATE(ByVal D1 As Date, ByVal y As Integer, ByVal m As Integer, ByVal d As Integer) As Date

Return New Date(D1.Year + y, D1.Month + m, D1.Day + d)

End Function

طريقه الاسخدام

مثلا لو تبي تنقص التاريخ 10 سنوات!

Dim D1 As Date = My.Computer.Clock.LocalTime.Date

Dim S As String = NEWDATE(D1, -10, 0, 0).ToString()

MsgBox(S)

واذا تبي تقدم التاريخ 10 سنوات

Dim D1 As Date = My.Computer.Clock.LocalTime.Date

Dim S As String = NEWDATE(D1, 10, 0, 0).ToString()

MsgBox(S)

اعتقد كل شيء واضح .. بالتوفيق ..

1
#3

يوجد داله اسمها DateAdd

1
#4

جزاكم الله خيراً

قال صلى الله عليه وسلم: من قال إذا أصبح: رضيت بالله ربا وبالإسلام دينا وبمحمد نبيا فأنا الزعيم لآخذن بيده حتى أدخله الجنة. الصحيحة/2686

#5

الأصوب هكذا والله أعلم:

 Function NEWDATE(ByVal D1 As Date, ByVal y As Integer, ByVal m As Integer, ByVal d As Integer) As Date
        On Error Resume Next
        D1 = D1.AddYears(y)
        D1 = D1.AddMonths(m)
        D1 = D1.AddDays(d)
        Return D1
    End Function
1

قال صلى الله عليه وسلم: من قال إذا أصبح: رضيت بالله ربا وبالإسلام دينا وبمحمد نبيا فأنا الزعيم لآخذن بيده حتى أدخله الجنة. الصحيحة/2686

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…