السلام عليكم : عندي بيانات على صفحة إكسل عبارة عن تاريخ هجري ثم عملت لها نسخ ولصق في قاعدة البيانات ولكنه بالتاريخ الهجري . فكيف لي أحولها الى الميلادي مع العلم أن نظام الجهاز بالتاريخ الميلادي ... ودمتم
تحويل التاريخ الهجري
أخي الكريم
ألصق هذه الدالة بالوحدة النمطية الرئيسية وأشر إليها من أي مكان
مثلاً :
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
وليه كل هذا الكود ؟ مافيه طريقة أسهل مثل تغيير في الخصائص أو غيره ؟؟؟
الأخت الكريمة / ليلي
السلام عليكم وعوداً حميداً
بما أن البيانات بالهجري فيجب جعل التاريخ الهجري هو التاريخ الأساسي في قاعدة البيانات
في أكسس 97 و 2000 من قائمة أدوات >> بدء التشغيل >>> خيارات متقدمة ثم وضع علامة صح على التاريخ الهجري
في أكسس إكس بي من قائمة أدوات >>خيارات >> إعدادات دولية ثم ثم وضع علامة صح على التاريخ الهجري
هذه الخطوة الأولى
الخطوة الثانية هي لصق البيانات في جدول على أن يكون الحقل الذي تلصق فيه بيانات التاريخ حقل تاريخ
إذا لم تتضح الصورة فآمل إرفاق جزء من البيانات على شكل ملف إكسل وسوف أجرب الطريقة المناسبة بإذن الله
تحياتي
أخوك / أبو هاجر
مثل ما قال أبو هاجر
قبل لصق البيانات
في قاعدة البيانات المراد اللصق فيها
غيري تقويم قاعدة البيانات إلى التقويم الهجري
وليكن اللصق في حقل من نوع تاريخ - وقت
بعد أن يتم اللصق بشكل صحيح غيري تقويم قاعدة البيانات إلى التقويم الميلادي
سيتم تغيير التاريخ تلقائيا إلى التاريخ الميلادي
ملاحظة : كتبتها قبل أن أشاهد رد أبو هاجر مع الاعتذار للتكرار
مشكور أبوهاجر أتضحت الصورة والسبب الرئيسي أيضا أن بيانات صفحة أكسل ولي نسختها منه لم تكن محددة كتاريخ بل نص . وألف شكر لك ولمداخلة الأخ حارث .
هذا الموضوع مغلق.