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

احتساب العمر بالهجري


co2002co

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

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

تقبل الله صيامكم وقيامكم

 

بحثت بالمنتدى وخارج المنتدى

عن طريقه ل احتساب العمر بالتاريخ الهجري

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

حصلت على vba للتحويل

 

ابحث عن كويري يحول التاريخ من الميلادي الى الهجري

مع احتساب العمر بالهجري مجزء سنه / شهر / يوم

رابط هذا التعليق
شارك

ترجع مشكلة التاريخ الهجري في التعامل معه على أنه تاريخ ميلادي

فلا يقبل مثلا التاريخ 29/02/1438

لذا أقترح التعامل معه على أنه نص

وهذه دالة للفرق بين تاريخين هجريين

على اعتبار أن الشهر 30 يوم

Function datedifh(olddate As String, newdate As String) As String
Dim d As Integer, m As Integer, y As Integer, nd As Integer, nm As Integer, ny As Integer
nd = Left(newdate, 2): d = Left(olddate, 2)
nm = Mid(newdate, 4, 2): m = Mid(olddate, 4, 2)
ny = Right(newdate, 4): y = Right(olddate, 4)
If nd < d Then nm = nm - 1: nd = nd + 30
If nm < m Then ny = ny - 1: nm = nm + 12

datedifh = nd - d & " يوم " & nm - m & " شهر " & ny - y & " سنة"
End Function

 

ويتم استدعاؤها هكذا

MsgBox datedifh("29/02/1977", "05/05/2017")

 


مع مراعاة اليوم من رقمين والشهر من رقمين

رابط هذا التعليق
شارك

منذ ساعه, أ / محمد صالح said:

ترجع مشكلة التاريخ الهجري في التعامل معه على أنه تاريخ ميلادي

فلا يقبل مثلا التاريخ 29/02/1438

لذا أقترح التعامل معه على أنه نص

اشكر لك اهتمامك وشرحك الوافي

لكن احتاج على شكل استعلام

 

ممكن عمل المثال على شكل استعلام

رابط هذا التعليق
شارك

الدالة يمكن استخدامها في الاستعلام والنموذج والتقرير

فقط تكتب تاريخ البداية في حقل وتاريخ النهاية في حقل آخر وفي الحقل الثالث تكتب

=datedifh(field1,field2)

 

رابط هذا التعليق
شارك

7 ساعات مضت, أ / محمد صالح said:

ترجع مشكلة التاريخ الهجري في التعامل معه على أنه تاريخ ميلادي

فلا يقبل مثلا التاريخ 29/02/1438

كيفك استاذ @أ / محمد صالح

سعداء بعودتك ومشاركتك هذه الفترة وشرف كبير لنا

جربت ان وضعت الخيار الهجري وقبل التاريخ اعلاه 29/02/1438 !

ام تقصد تاريخ اخر

تحياتي

  • Like 1
رابط هذا التعليق
شارك

33 دقائق مضت, رمهان said:

كيفك استاذ @أ / محمد صالح

سعداء بعودتك ومشاركتك هذه الفترة وشرف كبير لنا

جربت ان وضعت الخيار الهجري وقبل التاريخ اعلاه 29/02/1438 !

ام تقصد تاريخ اخر

تحياتي

الشرف لي أستاذ @رمهان

بارك الله لك

فعلا إذا تم تغيير الخيارات للهجري يقبل

ولكن لا تكون حسابات دالة datedif صحيحة

وإذا كنت جربت الدالتين

فأيهما يعطي نتائج أفضل؟!

رمضان مبارك

رابط هذا التعليق
شارك

1 ساعه مضت, co2002co said:

 

 

اساتذتي الكرام

 

كذا انا اكثر ضيااااااااع

إذا سمحت لي أخي الكريم

أنت لست أكثر ضياعا

وإنما أكثر رغبة في أن تضيع نفسك

وتضيع جهودي معك

هدانا الله جميعا لكل خير

........

هل جربت الدالة التي كتبتها لك ولم تؤد الغرض المصممة لأجله؟!

وهو الفرق بين تاريخين هجريين منسقين كنص

رابط هذا التعليق
شارك

هههههههههههه

فعلا أخي الكريم

الملف المرفق ليس به اي شيء يخص تنفيذ الفكرة

فقط نموذج إضافة للاسم وتاريخ الميلاد

وجدول به الرقم والاسم وتاريخ الميلاد (وبعض التواريخ بالميلادي وبعضها بالهجري)

....................................

على العموم 

هذا مثال لطريقة استعمال الدالة في الاستعلام والنموذج والتقرير

أرجو أن تستفيد منه

الفرق بين تاريخين هجريين.rar

رابط هذا التعليق
شارك

منذ ساعه, أ / محمد صالح said:

هههههههههههه

ههههههههههه

كنت اقصد انك تطبق الفكره على الملف المرفق

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

لكن مجبر اني اغير للهجري

 

اجرب وارد لك خبر

رابط هذا التعليق
شارك

وفقكم الله لكل خير

في حالتك هذه تحتاج لجعل التاريخ الجديد هو تاريخ اليوم بالهجري منسق كنص

لكن هل قامت الدالة بالمطلوب؟!

رابط هذا التعليق
شارك

1 دقيقه مضت, أ / محمد صالح said:

وفقكم الله لكل خير

في حالتك هذه تحتاج لجعل التاريخ الجديد هو تاريخ اليوم بالهجري منسق كنص

لكن هل قامت الدالة بالمطلوب؟!

هنا المصيبه

 

حيت ان الداله تاخذ التاريخ الميلادي الفعلي وليس الهجري

ف يطلع العمر فلكي

غيرت الوحده النمطيه

 

 

اقصد newdate

الى date()

 

 

ومشي الحال

الف شكر لك

رابط هذا التعليق
شارك

يعني الدالة غير صحيحة؟!!

أشك

المدخلات غير متفقة مع المطلوب للدالة

المدخلات المطلوب تمريرها للدالة التاريخ القديم كنص والتاريخ الجديد كنص

 

رابط هذا التعليق
شارك

1 دقيقه مضت, أ / محمد صالح said:

يعني الدالة غير صحيحة؟!!

أشك

المدخلات غير متفقة مع المطلوب للدالة

المدخلات المطلوب تمريرها للدالة التاريخ القديم كنص والتاريخ الجديد كنص

انا كنت اغير بالاستعلام

 

والمفترض اغير بالوحده النمطيه

 

 

اشكر لك سعه صدرك وتحمل جهلي

رابط هذا التعليق
شارك

أعتقد لا يلزمك تغيير شيء بالوحدة النمطية

لأن أي تغيير سيغير ناتج الدالة

رابط هذا التعليق
شارك

6 دقائق مضت, أ / محمد صالح said:

أعتقد لا يلزمك تغيير شيء بالوحدة النمطية

لأن أي تغيير سيغير ناتج الدالة

جربت اغير ب تاريخ الميلاد للتاكد

 

طلع الحساب غلط

يعني لو تحط ميلاد اليوم يطلع لك الناتج ب السالب

رابط هذا التعليق
شارك

قصدك لو (تاريخ الميلاد) التاريخ القديم هو اليوم

والتاريخ الجديد هو اليوم أيضا

سيكون الناتج

0 يوم 0 شهر 0 سنة

ولا يوجد ناتج سالب إلا إذا كان التاريخ الجديد قبل التاريخ القديم

راجع حساباتك

الكمبيوتر لا يخطئ ابدا ما دام الكود صحيحا

ربما يكون الخطأ من المستخدم

رابط هذا التعليق
شارك

في 5/31/2017 at 18:24, أ / محمد صالح said:

قصدك لو (تاريخ الميلاد) التاريخ القديم هو اليوم

تقبل الله منكم صيامكم وقيامكم

 

 

قمت بالتعديل على المثال المرسل بالشكل التالي

 

هل ماقمت به صحيح

ارجو التصحيح

الفرق بين تاريخين هجريين.rar

رابط هذا التعليق
شارك

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

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

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

Important Information