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

تحويل التاريخ الهجري

مغلق
بدأه lyla في 27 يناير 2003 · 5 رد · 2,273 مشاهدة · في مراجعة المواضيع
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم : عندي بيانات على صفحة إكسل عبارة عن تاريخ هجري ثم عملت لها نسخ ولصق في قاعدة البيانات ولكنه بالتاريخ الهجري . فكيف لي أحولها الى الميلادي مع العلم أن نظام الجهاز بالتاريخ الميلادي ... ودمتم

#2

أخي الكريم

ألصق هذه الدالة بالوحدة النمطية الرئيسية وأشر إليها من أي مكان

مثلاً :

Gregori(MyDate)

Function Gregori(HijriDatP As Variant) As String

Dim GregorianDate As String

Dim HijriDate As String

Dim HijriFormat As String

Dim HijriDat As String

On Error GoTo ERR

HijriDat = CStr(HijriDatP)

GregorianDate = HijriDat ' Gregorian string to convert

HijriFormat = "Short Date" ' Format for Hijri date



'// Convert to Hijri date 7/8/1414 and return in Long Date format

HijriDate = ConvertDateString(GregorianDate, vbCalHijri, vbCalGreg, HijriFormat)

Gregori = HijriDate

ERR:

Exit Function

End Function

Function ConvertDateString(ByRef StringIn As String, ByRef OldCalendar As Integer, ByVal NewCalendar As Integer, ByRef NewFormat As String) As String

Dim SavedCal As Integer

Dim d As Date

Dim s As String

'// Save VBA Calendar setting to restore when finished

SavedCal = Calendar

'// Convert date to new calendar and format

Calendar = OldCalendar ' Change to StringIn calendar

d = CDate(StringIn) ' Convert from String to Date

Calendar = NewCalendar ' Change to calendar of new string

s = CStr(d) ' Convert to short format String

ConvertDateString = Format(s, NewFormat) 'Reformat

'// Restore VBA Calendar setting

Calendar = SavedCal

End Function
#3

وليه كل هذا الكود ؟ مافيه طريقة أسهل مثل تغيير في الخصائص أو غيره ؟؟؟

#4

الأخت الكريمة / ليلي

السلام عليكم وعوداً حميداً

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

في أكسس 97 و 2000 من قائمة أدوات >> بدء التشغيل >>> خيارات متقدمة ثم وضع علامة صح على التاريخ الهجري

في أكسس إكس بي من قائمة أدوات >>خيارات >> إعدادات دولية ثم ثم وضع علامة صح على التاريخ الهجري

هذه الخطوة الأولى

الخطوة الثانية هي لصق البيانات في جدول على أن يكون الحقل الذي تلصق فيه بيانات التاريخ حقل تاريخ

إذا لم تتضح الصورة فآمل إرفاق جزء من البيانات على شكل ملف إكسل وسوف أجرب الطريقة المناسبة بإذن الله

تحياتي

أخوك / أبو هاجر

#5

مثل ما قال أبو هاجر

قبل لصق البيانات

في قاعدة البيانات المراد اللصق فيها

غيري تقويم قاعدة البيانات إلى التقويم الهجري

وليكن اللصق في حقل من نوع تاريخ - وقت

بعد أن يتم اللصق بشكل صحيح غيري تقويم قاعدة البيانات إلى التقويم الميلادي

سيتم تغيير التاريخ تلقائيا إلى التاريخ الميلادي

ملاحظة : كتبتها قبل أن أشاهد رد أبو هاجر مع الاعتذار للتكرار

#6

مشكور أبوهاجر أتضحت الصورة والسبب الرئيسي أيضا أن بيانات صفحة أكسل ولي نسختها منه لم تكن محددة كتاريخ بل نص . وألف شكر لك ولمداخلة الأخ حارث .

هذا الموضوع مغلق.

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