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

كيف اجعل حقل التاريخ يقبل فقط بين عامي:2009-2013


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

منذ ساعه, امل عبدالمحسن said:

شكرا استاذ عبدالفتاح ماقصرت

وعندى ايضا استفسارات كثيره في الآكسس ممكن اكتبهم وترد علي 

اختي الفاضلة اهلا وسهلا بِكِ في المنتدى :rol:

قوانين المنتدى لا تسمح لأكثر من سؤال واحد في كل موضوع ، لذا اعملي العدد اللي تحبين من المواضيع الجديدة ، والكل ان شاء الله بيحاول المساعدة :rol:

 

جعفر

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

10 دقائق مضت, jjafferr said:

وانت منهم أخي عبدالفتاح :rol:

كيف و أنا اتتبع خطاكم و أسطركم الذهبية فى الردود على الأعضاء
حيا الله جميع رواد المنتدى و بارك فى علمكم

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

السلام عليكم 

طيب لو عاوز اجبر المستخدم انه يدخل تاريخ عن السنه الحاليه فلو استخدامات دالة الاستاذ عبدالفتاح كيرة. 

7 ساعات مضت, عبد الفتاح كيرة said:

Between #1/1/2009# and #31/12/2013#

فى مواصفات الحقل

قاعدة التحقق من الصحة

يجب ان اعود مع بداية كل سنه لخصائص الجداول واغير التواريخ

فهل من طريقة اخري

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

27 دقائق مضت, محمد سلامة said:

يجب ان اعود مع بداية كل سنه لخصائص الجداول واغير التواريخ

فهل من طريقة اخري

همم ، مع ان هذا السؤال غير عن السؤال الاصل ، ولكن له علاقة ما :wink2:

 

خلينا نراجع الموضوع بطريقة تختلف شوي ، وراح نوصل بنتائج اخرى :rol:

يجب عدم السماح لمستخدمي البرنامج ان يدخلوا البيانات في الجداول مباشرة ، لأي سبب كان ،

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

فالمسألة اصبحت سهلة ، حيث نستطيع ان نعمل معادلة لهذا الحدث ، فلنفترض ان اسم الحقل Date_From ، عليه تكون المعادلة شئ من هذا النوع:

Between DateSerial(Year(Date()),1,1) And DateSerial(Year(Date()),12,31)

 

واعتقد بأننا نستطيع ان نضع هذه المعادلة في قاعدة التحقق من الصحةفي الجدول كذلك :rol:

 

 

جعفر

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

13 دقائق مضت, jjafferr said:

فالمسألة اصبحت سهلة ، حيث نستطيع ان نعمل معادلة لهذا الحدث ، فلنفترض ان اسم الحقل Date_From ، عليه تكون المعادلة شئ من هذا النوع:


Between DateSerial(Year(Date()),1,1) And DateSerial(Year(Date()),12,31)

 

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

ويمكن ان نجعل الامر اكثر مرونة فنستبدل  ()Date   بمتغير  نجعله بين يدي المستخدم

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

2 دقائق مضت, ابوخليل said:

ويمكن ان نجعل الامر اكثر مرونة فنستبدل  ()Date   بمتغير  نجعله بين يدي المستخدم

انت الخير والبركة اخوي ابو خليل :rol:

واكمالا لفكرتك ، نستطيع ان يكون عندنا متغيرين اثنين (Date_1 و Date_2) ، فبهذه الطريقة يمكن الاستفادة من المعادلة لسنة او 4 سنوات او اي عدد من السنين:

Between DateSerial(Year([Date_1]),1,1) And DateSerial(Year([Date_2]),12,31)

 

جعفر

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

بارك الله فيكم جميعا 

واذا سمحت استاذ جعفر ممكن مثال بسيط حتي افهم وجهة نظرك

شكرا جزيلا

تم تعديل بواسطه محمد سلامة
رابط هذا التعليق
شارك

السلام عليكم :rol:

في 3/3/2016 at 02:47, محمد سلامة said:

واذا سمحت استاذ جعفر ممكن مثال بسيط حتي افهم وجهة نظرك

تفضل :rol:

 

هذا النموذج يعطيك نظرة شاملة عن حقول التواريخ:

306.Clipboard01.jpg.7c3c1289cbc924246dea

.

قاعدة التحقق من الصحة في الحقول Date_1 و Date_2 ثابته في الجدول ، مثلا:

306.Clipboard03.jpg.65f800e34aa2af90d54d

.

وقاعدة التحقق من الصحة في الحقول Date_11 و Date_22 متغيرة في الجدول على اساس السنة ، مثلا:

306.Clipboard04.jpg.23449dde4f5048ac9d63

.

بينما قاعدة التحقق من الصحة في الحقول Date_111 و Date_222 متغيرة في النموذج ، مثلا:

306.Clipboard02.jpg.0164f9d24df11a8daa7e

.

والكود يمكن يكون:

سواء
Between [Date_From] And [Date_To]

او اذا التواريخ موجودة في نموذج خارجي
Between [Forms]![frm_Dates]![Date_From] And [Forms]![frm_Dates]![Date_To]

.

والتجربة:

306.gif.0e6a8a3c91a4ae24abc93ac1875a0cfa

.

النتيجة اللي كنت اريد ان اوصل لها هي ، عندما تكون التواريخ متغيرة في النموذج (وهذا رأي اخوي ابو خليل كذلك) ، فيكون عندك تحكم افضل ، وتغييره يكون اسهل ، وخصوصا اذا كان البرنامج عند العميل ، لأن برمجة النموذج ممكنه :rol:

 

جعفر

306.Validation_Rule.mdb.zip

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

ايش رأيك في مثال موسع أكثر :rol:

 

نستطيع ان نعمل قاعدة التحقق من الصحة في كود ، مثلا:

 

اعمل حقل اسمه int_No ، وعلى حدث "الحالي" للنموذج ، استعمل كود مثل هذا:


Private Sub Form_Current()

    If Day(Date) <= 5 Then
    
        Me.int_No.ValidationRule = "is null or <=5"
        
    ElseIf Day(Date) <= 10 Then
    
        Me.int_No.ValidationRule = "<=10"
        
    ElseIf Day(Date) <= 15 Then
    
        Me.int_No.ValidationRule = "isnumeric([int_No])=true"
        
    ElseIf Day(Date) <= 20 Then
    
        Me.int_No.ValidationRule = "isnumeric([int_No])=false"
        
    ElseIf Day(Date) <= 25 Then
    
        Me.int_No.ValidationRule = "between 15 and 30"
        
    Else
    
        Me.int_No.ValidationRule = "between 1 and 14"
        
    End If
    
End Sub

.

فحسب يوم الشهر ، تتغير قاعدة التحقق من الصحة :rol:

مرونة تامّه ، مو مثل الجدول :rol:

 

جعفر

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

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