(15-12-21, 12:20 AM)اسلام الكبابى كتب : لم يرد Microformt حتى الآن
هل يكفيك كود يعطيك تاريخ ما بالهجري اعتماداً على التاريخ الميلادي
أم أنك تريد خوارزمية حقيقية لحساب تاريخ ما بالهجري دون الاعتماد على نظام ويندوز
ان كنت تريد خوارزمية حقيقية فأنا خبير فى أى خوارزميات رياضية
ولكن ما هو نظام التاريخ الهجرى؟
معلوم أن التاريخ الميلادى له نظام حسابى لايعتمد على قمر ولا هلال
انما معلوم أن الأشهر(1 ، 3 ، 5 ، 7 ، 8 ، 10 ، 12) عدد أيام كل منها 31 يوم
وأن الأشهر(4 ، 6 ، 9 ، 11) عدد أيام كل منها 30 يوم
وأن شهر فبراير عدد أيامه 28 يوم أو 29 يوم (كل 4 سنوات)
فهل للتاريخ الهجرى نظام حسابى هو الآخر؟
ان كنت تريد خوارزمية حقيقية اكتب لى نظامه أكتب لك الخوارزمية التى تريدها
اخي العزيز
السلام عليكم ورحمة وبركاته
إذا يوجد عند ك خورزمية تحويل التاريخ الميلادي الى تاريخ امر القرى او العكس ؟
نامل المساعدة العاجلة وجزك الله خيراً
(19-11-21, 10:17 PM)Taha Okla كتب : إن كنت تريد كود يعطيك تاريخ ما بالهجري اعتماداً على التاريخ الميلادي لنظام التشغيل لديك(ويندوز) أو بالعكسنعم اخي العزيز اريد خورزمية
فهذا الكود يناسبك ..
كود :
Public Function TransDate(thedate As Date, HijriType As Boolean) As String
Dim TempDate As String, MD As Date, a As String
If HijriType = True Then
VBA.Calendar = vbCalHijri
TempDate = CStr(thedate)
TransDate = TempDate
VBA.Calendar = vbCalGreg
Else
a = CStr(thedate)
VBA.Calendar = vbCalHijri
MD = CDate(a)
VBA.Calendar = vbCalGreg
TransDate = CStr(Format(MD, "dd/mm/yyyy"))
End If
End Function
Private Sub Command1_Click()
Text2.Text = TransDate(Text1.Text, True) ' تاريخ هجري
End Sub
Private Sub Command2_Click()
Text2.Text = TransDate(Text1.Text, False) ' تاريخ ميلادي
End Sub
وإن كنت تريد خوارزمية حقيقية لحساب تاريخ ما بالهجري دون الاعتماد على نظام ويندوز -- فهذا شيء آخر وليس الكود السابق ..
إذا ضاقت بك الأحوال يوماً فَثِقْ بالواحِدِ الفَرْدِ العَلِيِّ

