التخطي إلى المحتوى الرئيسي

اصول التعامل الصحيح مع التاريخ في مايكروسوفت اكسس

عندما يتم التعامل مع التاريخ باستخدام محرر الكود VBA او باستخدام SQL في مايكروسوفت اكسس فان تنسيق التاريخ سيتغير الى التنسيق الامريكي MM/DD/YYYY مهما كانت اعدادات تنسيق التاريخ الخاصة بجهاز المستخدم.

يمكنكم مشاهدة الفيديو للحصول على الشرح التفصيلي او الاستمرار بقرأة الموضوع

ولمشاهدة مثال على ذلك يمكنكم اضافة تاريخ في معايير الاستعلام ثم مشاهدة SQL لهذا الاستعلام 
 
في كثير من الاحيان نجد ان الكود او الاستعلام لا يعمل بشكل صحيح فمثلا قد تطلب التواريخ التي بعد تاريخ 7/4/2016 ولكن الاستعلام او الكود يفهمها بشكل معكوس ويعطي النتائج لما بعد تاريخ 4/7/2016.
للتغلب على هذا الامر يجب علينا استخدام الدالة Format حتى نحول التاريخ الى الصيغة الامريكية ليتم التعامل معهة بالشكل الصحيح، وهنا يجب الانتباه ايضا الى فواصل التاريخ المستخدمة في اعدادات الوندوز فلو  استخدمنا اشارة "/" كفاصل فانه لا مشكلة في ذلك ولكن اذا تم استخدام "\" فان هذا سيسبب مشكلة وسيظهر لنا الخطأ رقم 3075 ولهذا سنستخدم الاشارتين "/" و"\" في التنسيق للدلالة على ان الفاصل متغير وبذلك سيكون متاح استخدام اي فاصل نريدة  .
فمثلا لو اردنا فتح نموذج معين بشرط اظهار السجلات بعد التاريخ الموجود في مربع النص Text0 سيكون الكود كما يلي:
VBA
DoCmd.OpenForm "students", , , "StDateOfBirth<" & Format$(Form_Form1.Text0, "\#mm\/dd\/yyyy\#")
او يكون ضمن دالة Dlookup او Dcount او Dlast او Dmin ... الخ وكما يلي:
VBA


DLookup("FieldName" , "TableName" , "Criteria= Format$(Date, "\#mm\/dd\/yyyy\#")





تعليقات

  1. السلام عليكم جزاك الله خيرا أخي إذا بأريد أسوي كود مثل السابق ولكن الفرق أن يكون بين تاريخين من تاريخ إلى تاريخ كيف يكون الكود شكرا لك

    ردحذف

إرسال تعليق

المشاركات الشائعة من هذه المدونة

انشاء الجداول في اكسس

انشاء الجداول في اكسس بعد انشاء ملف اكسس جديد فان الخطوة الاولى ستكون انشاء الجداول، ولانشاء الجداول نتبع ما يلي: 1- اختيار create  كما في الصورة 2- نقوم باختيار Table او Table Design والامر متروك للمستخدم، وانا بشكل شخصي افضل Table Design 3- بعد اختيار Table Design ستفتح لنا نافذة تصميم الجدول كما في الصورة 4- الحقل الاول Field Name يتم فية ادخال عناوين الاعمدة (الحقول) 5- الحقل الثاني Data Type يتم فية تحديد نوع المتغير (رقم ، نص ، تاريخ ...الخ) 6- الحقل الثالث Description وهو حقل اختياري ويتم فية ادخال وصف لهذا العمود 7- في كل جدول يجب تحديد المفتاح الاساسي ويجب ان يحتوي هذا الحقل على قيمة فريدة لا تتكرر مع اي حقل اخر. 8 - بعد الانتهاء نقوم باغلاق الجدول وعندها ستظهر نافذة لتحديد اسم الجدول وحفظة . 9- بعد فتح الجدول سيكون شكله كما في الصورة 10- نلاحظ ان عنوان العمود الاول ظهر كما تم كتابتة في التصميم اما العمود الثاني فقد ظهر اسمة باللغة العربية والسبب انه تم اضافة تسمية للعمود من خصائص الحقل اثناء تصميم الجدول كما في الصورة وبذلك يكو...

الشروط في الاستعلامات

الشروط في الاستعلامات يمكن اضافة الشروط في تصميم الاستعلام وعند اضافة الشرط فان الاستعلام سيقوم باظهار السجلات التي ينطبق عليها الشرط فقط، ويجب الانتباه الى انواع الحقول في الجدول قبل و ض ع الشرط لان صيغة الشرط في النص يختلف عنة اذا كنا نتعامل مع ارقام او تاريخ وسنتطرق الى هذة الانواع في هذا الموضوع. الصورة ادناة تخص تصميم الجدول الذي سنتعامل معه حيث يحتوي على اربع حقول من ظمنها اسم الطالب ونوعه نص قصير، وتاريخ الميلاد ونوعه تاريخ ووالنتيجة ونوعه رقم تم انشاء المثال اعلاة وتم تسميه الحقول باللغة العربية لتسهيل فهم الموضوع ، مع التاكيد على استخدام اللغة الانجليزية لكتابة المسميات يمكنك مشاهدة الفيديو للحصول على ايضاحات اكثر او الاستمرار بقراءة الموضوع 1-     الشروط في الحقل الذي يحتوي على نص او ارتباط تشعيبي: حسب الصورة اعلاة  لتصميم الجدول الخاص بنتائج الطلاب نلاحظ ان نوع البيانات في الحقل الثاني (اسم الطالب)    هو نص " Short Text "  وللتعامل مع هذا الحقل في الاستعلامات ،   في تصميم الاستعلام يمكننا ان نظع الشروط وكم...

انشاء نموذج للدخول باسم مستخدم وكلمة مرور الى برنامج اكسس

انشاء نموذج للدخول باسم مستخدم وكلمة مرور الى برنامج اكسس عندما يكون البرنامج متاح لاكثر من شخص للعمل علية فلا بد من حماية البرنامج من المستخدمين غير المصرح لهم من خلال اضافة نموذج للدخول الى قاعدة الببيانات، ولانشاء نموذج الدخول الى البرنامج نتبع الخطوات التالية: انشاء جدول للمستخدمين يتم فيه تخزين اسماء المستخدمين وكلمات مرورهم ويحتوي على حقل لاسم المستخدم وحقل لكلمة المرور انشاء نموذج للدخول ويحتوي على مربعي نص غير مستندة الى مصدر بيانات، وزري امر واحد للالغاء والثاني للدخول  اضافة الكود التالي في حدث عند النقر في زر موافق   VBA   If pas = DLookup("userpass", "tusers", "usernam='" & [usr] & "'") Then DoCmd.OpenForm "Form1" Else MsgBox "يوجد خطأ في اسم المستخدم او كلمة المرور" End If