19-11-21, 10:17 PM
إن كنت تريد كود يعطيك تاريخ ما بالهجري اعتماداً على التاريخ الميلادي لنظام التشغيل لديك(ويندوز) أو بالعكس
فهذا الكود يناسبك ..
وإن كنت تريد خوارزمية حقيقية لحساب تاريخ ما بالهجري دون الاعتماد على نظام ويندوز -- فهذا شيء آخر وليس الكود السابق ..
فهذا الكود يناسبك ..
كود :
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وإن كنت تريد خوارزمية حقيقية لحساب تاريخ ما بالهجري دون الاعتماد على نظام ويندوز -- فهذا شيء آخر وليس الكود السابق ..
قال صلى الله عليه وسلم:
«كلمتان خفيفتان على اللسان
ثقيلتان في الميزان،حبيبتان إلى الرحمن:
سبحان الله وبحمده، سبحان الله العظيم».
