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

جهراوي الكويت

03 عضو مميز
  • Posts

    103
  • تاريخ الانضمام

  • تاريخ اخر زياره

كل منشورات العضو جهراوي الكويت

  1. اختي الفاضلة .. نسيت اخبرك مكان البحث... بعد اذن استاذنا ( رضــــــــــــــــــــــــــــــــــــــــــــوان ) يوجد في قسم الأرشيف - مثال اسمه برنامج البحث المتطور للمبدع أبو هادي , ابحث عنه فهو يبحث بعدة خيارات و في جميع الحقول
  2. اختى الفاضلة .. هناك امثلة وملفات كثيرة بالمنتدى للرد على سؤالك .. على العموم أنت تريدين ( تصفية السجلات ) وليس ( البحث عن سجلات ) ابحثي تجديد مثالا جميلا لاخونا ابو هادي واستاذنا الكبير ( رضوان ) وشكار وانا على اسعتداد للشرح من الألف الى الياء
  3. انظر المثال التالي وانا على اسعتداد لتوضيح كيفية اغلاق النموذج الاول وفتح النموذج الثاني ========= بداية افتح النموذج tt db233.rar
  4. اخواني الافاضل .. لاحظت السؤال عن( تنسيق التاريخ ) وليس ( دالة التاريخ ) ومن بينها سؤال الاخ FRILL واليكم هذه المعلومات البسيطة ..عن تنسيق التاريخ نختار مربع النص ---- ثم نختار خصائص المربع النص تبويب ( التنسيق ) .. ثم نختار تنسيق عندما كتابة ما يلي فرضنا ان التاريخ المسجل في مربع النص هو 2/11/2007 وعند التنسيق لمربع النص وضعنا التنسيق d تنسيق الايام حيث يرمز هذا الايام الى اظهار اليوم فقط في مربع النص فتكون النتيجة = 2 ******************************************************* dd تنسيق الايام حيث يرمز هذا الايام الى اظهار اليوم فقط في مربع النص فتكون النتيجة = 02 حيث لا بد من وجود خانتين لو كان اليوم 2 = النتيجة 02 _______ ولو كان اليوم 11 النتجة 11 لا بد من ووجود خانتين عند اخيتار هذا التنسيــق بعكس اتنسيق الأول ************************************************************************** ddd تنسيق الايام حيث يرمز هذا الايام الى اظهار ( اسم ) اليوم وليس اليوم فقط في مربع النص فتكون النتيجة = مثلا السبت أو ألاحد أو الاثين أو الثلاثاء ... أ ************************************************************************** dddd تنسيق الايام حيث يرمز هذا الايام الى اظهار ( اسم ) اليوم وليس اليوم فقط في مربع النص فتكون النتيجة = مثلا السبت أو ألاحد أو الاثين أو الثلاثاء ... أ والفرق بين الاثنين...يكون خاصا عند الكتابة اللغة الانجليزية .. اما اللغة العربية فلا يوجد اختصار لأيام ولا للشهور فمثلا عند اخيتار تنسيق اليوم ddd =يظهر اختصار اليوم فقط ( أي ثلاثة حروف ) مثلا sunday يظهر النتيجة = sun dddd= يظهر ( اسم اليوم ) كاملا مثل sunday يظهر النتيجة = sunday ************************************************************ هذا الدرس اليوم.. والدرس القادم عن ********************************************** mm mmm mmmm yy yyyy w d/m/yyyy dd/mm/yy dddd dd/mm/yyyy ********************************************************************
  5. اخي الفاضل .. تذهب الى مربع النص وتختار خصائص وتذهب الى التنسيــق ... وتكتب ddd 1- يوجد مثال مرفق 2- انظر الى نفس الصفحة فقد كتبت مقالا فيه جميه التفاصيل التي تحتاج اليها راجعها db233.rar
  6. اخي الفاضل عند خصائص الحقل لمربع النص ضع ... ddd وجرب واخبرني بالتطورات
  7. مشاركة ابو عبدالرحمن في المنتدى بتاريخ: 12-October 03 اعمل مربع نص وسمه com1 في النموذج وزر أمر ألصق فيه هذا الكود في حدث عند النقر Dim a As String com1.SetFocus FIL1 = "[asnaf] " & "Like '" & "*" & [com1] & "*" & "'" Me.Filter = FIL1 Me.FilterOn = True If Me.RecordsetClone.RecordCount = 0 Then MsgBox"لا يوجد نتائج تطابق ما تبحث عنه" Me.FilterOn = False End If انتبه لمصدر السجل في حقل الأصناف سميته في هذا الكود ب (asnaf) استخدم نفس الاسم أو عدله في الكود كما هو عنك تم تحرير المشاركة بواسطة ابو عبدالرحمن: Oct 15 2005, 03:18 AM في منتدى اوفيسنا هذه المشاركة اللطيفة والجيدة لأخونا ابو عبدالرحمن .. أفادتنا كثيرا في تصفية السجلات .. لكن المشكلة .. انها تبحث في حقل واحد فقط ...وهو حقل الاصناف هل هناك طريقة للتعديل على الكود السابق للبحث في جميع الحقول دفعة واحدة وشكرا لكم ...
  8. اخواني الافاضل سؤالي .. عندي مربعي نص غير منضمين .. للاستفسار عن تاريخين احيانا .. المستخدم.. يكون غير عارف ان شهر سمتبر ( مثلا ) عدد ايامه 31 يوما فعند الاستفسار ووضع تاريخ 31/9/2007 يتعطل النموذج السؤال اريد عند وضع تاريخ غير مقبول مثلا (30/2 أو 32/9 تظهر رسالة تنبه المستخدم على ذلك ولكم جزيل الشكر مرفق ملف ____________31_9.rar
  9. اخي الفاضل .. الكود صحيح .. وليس فيه أخطاء وقد جربته بنفسي .. لذا اانصحك اعمل نموذج جديد.. والصق فيه الكود المرفق وحذف السطر الاول ( الرسالة ) وجرب ... وانظر ماذا تري .. اخوك .. جهراوي الكويت
  10. لحساب الفارق الزمني بين تار Datediff(“m”;[date1];[date2] ) قبل كل شيء يجب ملاحظة ما يلي :- 1- أن الدالة السابقة تحسب الفارق بين تاريخين 2- عدم وجود مسافة عند كتابة الدالة وملاحظة وضع الشهر بين علامتين تنصيص"" ووضع التاريخ الأول والتاريخ الثاني داخل أقواس [ ] 3- الفاصلة تكون فاصلة منقوطة .. 4- يرجى ملاحظة ما سبق .... أولا : بداية نتكلم عن الوسيطة الاولى ... وهي في مثالنا السابق الشهر "m" Datediff(“m”;[date1];[date2]) تعيد الفرق بعدد الاشهر مثال 1 Datediff(“m”;[2005/05/09];[2007/070/09]) يكون الفرق بين التاريخين 26 شهر لأننا طلبنا الفرق بالأشهــــر وليس الايام أو السنوات ******************************************************************** Datediff(“d”;[date1];[date2]) تعيد الفرق بعدد الايام مثال 2 Datediff(“d”;[2005/05/09];[2007/070/09]) تعيد الناتج 791 يوم ( لأننا طلبنا الناتج يكون بالايـــــــــــام عن طريق الوسيط D ************************************************** Datediff(“YYYY”;[date1];[date2]) تعيد الفرق بعدد السنوات مثال 3 Datediff(“y”;[2005/05/09];[2007/070/09]) تعيد الناتج 2 سنة= سنة 7- سنة 5 = عدد السنة الفارق 2سنة لأننا طلبنا الفرق بالسنوات ********************************************************************* Datediff(“Y”;[date1];[date2]) تعيد الفرق بعدد الايام ...يرجى ....ملاحظة أن كتبنا سنة وليس يوم .. تعالوا ننظر الى هذه الدالة ...... Datediff(“M”;[date1];[date2])/12 المفروض أنها تعيد الفارق بعدد الأشهر لأننا استعملنا الوسيطة (M) يعني شهر لكن الصحيح انها تعيد عدد السنوات لانها اشترطنا أن الناتج يقسم على 12 شهر وبالتالي فان النتيجة يكون بعدد السنوات لا بعدد الاشهر مع اننا استعملنا الوسطية شهر لاحظ أن وضعنا /12 خارج الأقواس وليس داخل الاقسام ...... تعيد الفارق بالسنوات + كسور ******************************************************************************** ****** يرجى ملاحظة الجدول لمعرفة الفروقات الإعدادالوصف yyyy السنة الأسبوع ww الأسبوع h الساعة n الدقيقة s الثانية وفيما عدا ذلك لا يعتد بذلك مثلا لو استعملنا أحد الوسائط التالية mm-mmm-mmm-dd-ddd-dddd-YY-YYY لا تعيد الدالة أي قيمة وترجع خطأ.............!!! ******************************************************************************** ****** ملاحظات :- 1- عند عكس التاريخ ووضع التاريخ الصغير في النهاية ووضع التاريخ الكبير في البداية تعطي نفس النتيجة السابقة لكن (-) يعني بالسالب .... ******************************************************************************** ****** وأيضــــــــــــــــــا تستطيـــــــــــــــع Datediff(“d”;[date1]; NOW()) Datediff(“d”;[NOW()];[date2]) تستطيع استخدام تاريخ الــــيــــــــوم كما في المثال السابق مثال على ذلك..استخدام الدالة لانتهاء صلاحية الجواز ... أو لمعرفة عدد أيام العمل ولمعرفة ( عمر الشخص ) ولمعرفة عدد سنوات العمل في الوزارة ... وهكذا ..... ******************************************************************************** *** Datediff(“d”;[date1]; #2007/10/25#) Datediff(“d”;# 2007/10/25#;[date2]) تستطيع استخدام هذه الدالة لمقارنة بين تاريخ ثابت لا يتغير وبين تاريخ تضعه في حقل مثال على ذلك لاستخدام الدالة لمعرفة الفروقات بين تاريخ ثابت وتاريخ متحرك أو تاريخ متتغير لكن في هذه الحالة لا تستخدم أقواس [ ] ولكن استخدم # # لوضع التاريخ الثابت ******************************************************************************** ******* لكن ماذا تفعل هذه الدالات : صراحة لا علم بها ... أتمنى أحد من ألأخوة يفيدنا بها .... Datediff(“d”;1;[date2]) Datediff(“M”;2;[date2]) Datediff(“Y”;5;[date2]) Datediff(“d”;5;NOW() Datediff(“Y”;4;NOW()) *********************** ربط الدالة بمربع رســــــــــــــــــالة تستطيع ربط( الدالة بمربع رسالة ) مثلا تستطيع عمل دالــــة لطرح التاريخ الحالي من تاريخ انتهاء جواز واذا كان الناتج > 29 يوم يظهر مربع رسالة ((( انتـــبـــــه .... جواز سفــر قارب على الانتهـــــــــــــــــــــــاء )))؟؟؟!!! لذلك نطلب من أحد الأخوة .... التطوع لعمل هذه الفكــــرة .. لنــــرى النتيجـــة .... *************************************************************************** قد يطرح بعض الاخوة سؤال ما هو الهدف من الحصول على هذه النواتج المختلفة أحيانا بالايام واحيانا بالاشهر واحيانا بالسنوات ..؟؟!! 1- نحتاج احيانا الى الحصول الى العدد الناتج بالسنوات ( مثال لذلك معرفة عمر الشخص ) فلا يعقل أن يسألك شخص ما عن عمرك فتقول له 20 سنة و5 شهور 12و يوم وانما الجواب المعتاد 20 سنة .. 2- نحتاج احيانا الى الحصول الى العدد الناتج بالايام ( لحاجات كثيرة منها مثلا اخبارنا ، بانتهاء الجواز أو البطاقة أو رخصة القيادة قبل بـ 29 يوما ولا نحتاج الأشهر او السنوات .. 3- أحيانا نحتاج الى العدد الناتج يكون بالسنوات والاشهر والايام .. مثلا ( لحساب نهاية خدمات موظف : نحتاج معرفة ايام العمل للموظف ( سنوات – اشهر- أيام ) وهكذا ..... ******************************************************************************** اخطـــــــــــــــــــاء هذه الدالة القابلـــة للـحــــــــــــــــل :- 1-عند مقارنة 31 ديسمبر من هذه السنة بـ 1 يناير من السنة التالية، تقوم الدالة DateDiff للسنة ("yyyy") بإرجاع 1 على الرغم من مرور يوم واحد فقط. مثال استعمل # بدلا من الاقواس ..... Datediff(“YYYY”;[2007/12/31];[2008/01/01]) لاحظ أن الفرق بين هذه التاريخين هو يوم.. لكن النتيجة .. حسب الدالة السابقة 1 سنة .... وهذه خطأ فادح ..؟؟؟؟ جرب الدالة وانظر أين الخطـــأ..... 2- عدم تقريب الارقـــــام .. فمثلا لو كان عمر شخص (25 سنة و11شهر و29 سنة ) لا يتم تقريب هذه الارقام ....اذا كان الوسيط ( سنة ) 3- احيانا نحتاج لمعرفة عدد أيام بين حقلين تاريخين هما ( تاريخ التعيين ) ( وتاريخ انتهاء التعيين ) ونريد معرفة عدد أيام العمل لهذا الموظف لكن .. ( بعد حذف ايام الخميس والجمعة – لا يوجد عمل بهذين العمل ) ... فما هو الحل في هذه الحالــــة ...؟؟؟؟!!!!!!!!!!!! 4- لنقص أيام أو سنين من تاريخ افتراضي فما هو الحل ... يعني تاريخ 15/2/2007 ننقص منه 5 أيام فما هو الحل اذا أردنا يكون الناتج على شكل تاريخ وليس عددا.. 5- هل هناك طريقة ليكون الناتج على شكل تنسيــق بمعني .. هل تسطيع هذه الدالة Datediff(“y”;[2005/05/01];[2007/070/09]) فيكون الناتج 8 يوم /2 شهر / 2سنة الجواب .. نعم هناك دالة موجودة في المنتدى .. لكن لا أذكرها موقعها بالتحديـــد .... ******************************************************************************** ************* وأخيــرا يجب قراءة هذه الملاحظات التي أحضرتها من تعليمات البرنامج (مكتوبة باللون الزهري):- لحساب عدد الأيام بين date1 و date2، يمكنك إما استخدام "يوم من السنة" ("y") أو "اليوم" ("d"). عندما تكون interval عبارة عن "يوم من الأسبوع" ("w")، تقوم الدالة DateDiff بإرجاع عدد الأسابيع بين التاريخين. إذا وقع date1 في يوم الاثنين، تقوم الدالة DateDiff بحساب عدد أيام الاثنين حتى date2. يتم حساب date2 وليس date1. إذا كان interval عبارة عن "أسبوع" ("ww")، تقوم الدالة DateDiff مع ذلك بإرجاع عدد أسابيع التقويم بين التاريخين. يتم حساب أيام الأحد بين date1 و date2. تقوم الدالة DateDiff بحساب date2 إذا وقع في يوم الأحد؛ ولكن لا يتم حساب date1، حتى ولو وقع في يوم الأحد. إذا كان date1 أو date2 عبارة عن تاريخ حرفي، تصبح السنة المحددة جزءً دائماً من هذا التاريخ. ولكن إذا كان date1 أو date2 داخل علامتي اقتباس (" ")، وقمت بحذف السنة، يتم إدراج السنة الحالية في التعليمات البرمجية في كل مرة يتم حساب تعبير date1 أو date2. وهذا يسمح بكتابة التعليمات البرمجية التي يمكن استخدامها في سنوات مختلفة. ملاحظة بالنسبة للتاريخين date1 و date2، إذا كان إعداد الخاصية التقويم هو الميلادي، يجب أن يكون التاريخ ميلادياً. إذا كان التقويم هجرياً، يجب أن يكون التاريخ هجرياً.************************************************************************ في النهاية 1-لي طلب صغير من جميع من قرأ هذه السطور .. بالتكرم باعطائنا مثال ( عملي ) يعني برنامج صغير عن الدالة السابقة حتى تعم الفائدة مثلا من يتكرم باعطائنا رسالة توضح عدد الايام المتبقية لنهاية سنة 2007م 2- يرجى التكرم من الاخوة اضافة أي معلومة جديدة عن الدالة حتى تكون مرجع لباقي الاعضاء .... وفي الختام .... 1- الفضل لله تعالى أولا وأخيرا على هذه المعلومات المتواضعة .. ثم الفضل لمنتديات ( الفريق العربي للبرمجة ومنتدى أوفيســــنا ) ولجميع الاعضاء والمشرفين في هذين المنتدين 2- قد يكون الترتيب لهذا الكلام غير منطقي لأنني كتبتها على عجالة ..
  11. اخواني الافاصضل .. حسابي غير مفعل فها هو السبل ولمك جزيل الشكر
  12. هل يوجد كود للدالة للفرق بين تاريخين
  13. اليك مثال احضرته من احد المنتديات وفيه بيانات الاخ الذي عمل هذا الشريط المتحرك اذا احتجت الى شرح .. فأنا حاضر وتحت امرك ... __________.rar
  14. اخي الفاضل ... اذهب الى الاستعلام بطريقة عرض التصميم ومن شريط الادوات وليس من شريط القوائم ابحث عن ( القيم العليا ) غالبا مكتوب فيها ( الكل ) وغير الرقم الى 20 واختر رؤية الاستلام لتنظر النتائج
  15. اخي .. المهم التطبيق .. اذا واجهتك مشكلة . انا مستعد لاعطائك مثال ... او تسهيل المعلومة لك بصورة أفضل
  16. 1- عندي نموذج رئيسي فيه حقل اسمه تاريخ استلام آخر راتب من الشركة 2-عندي نموذج فرعي فيه حقل اسمه الحالة وحقل آخر اسمه تاريخ آخر استلام راتب تاريخ استلام الراتب بتاريخ 1/1/2007 تاريخ استلام الراتب بتاريخ 1/2/2007 تاريخ استلام الراتب بتاريخ 1/3/2007 تاريخ استلام الراتب بتاريخ 1/4/2007 أريد وضع تاريخ استلام آخر راتب من ( النموذج الفرعي ) ووضعه في حقل في النموذج الرئيسي بحيث في المثال السابق يذكر تاريخ 1/4/2007 ولو حدث تغيير في النموذج الفرعي ووضعنا تاريخ جديد لاستلام الراتب ... يتم ووضعه تلقائيا في النموذج الرئيسي مرفق لكم القاعدة .. اخوكم / جهراوي الكويت ______.rar
  17. هذه المشكلة تواجه الكثيرين .. من الشباب .. الحل .. تعديل الهوامش الربعة ( يمين - يسار - اعلى - اسفل ) ولو ترفق المثال يتضح اين المشكلة .. علوية او جانبية ...
  18. اخي .. استخدم هذه الدالة ... TT=DATE DIFF("الفاصل الزمني ", التاريخ الأول ,التاريخ الثاني ) TT هو اسم الحقل الجديد لوضع فارق التاريخين الفاصل الزمني هو بالسنين أو الايام او بالاسابيع وبالتوفيق ...
  19. اخي .... شكرا ..وبالتوفيق وجزاك الله خيرا ...على افادتك لنا ..
  20. اخي الفاضل .... لو انك بحث في هذا المنتدي .. لوجدت .... ما اردت ...... على العموم هنا طريقتان .... واليك الطريقة الاولى حاليا ... 1- اعمل النموذج الذي تريده وضعه في الواجهه .. 2-اذهب الى القوائم _______ ادوات ____ بدء التشغيل .... 3 - اختر ( عرض النموذج / صفحة ) واختر اسم النموذج التي تريده ...مثلا النمذوج الرئيسي )ثم موافق الخطوة الثانية وليس الطريقة الثانية .. ضع هذا الكود عند حدث الفتح او التحميل للنموذج الذي تريد ان يكون ملء الشاشة DoCmd.Maximize حتى يظهر النموذج عند فتحه ملىء الشاشة كاملة دون أن يكون معه أي شيء آخر ...ثم بالخطوات التالية : 1- في خصائص النموذج في حدث عند الفتح أو عند التحميل ضع الكود التالي : Private Sub Form_Open(Cancel As Integer) DoCmd.Maximize End Sub 2- في خصائص النموذج في تنسيق عند " أشرطة التمرير" نختار : لا هذا و لا ذاك . 3- في خصائص النموذج في تنسيق عند " نمط الحدود " نختار : بلا . 4- في خصائص النموذج في تنسيق عند " محددات السجلات " نختار : لا . 5-منبثق = نعم هذه الطريقة الاولى .... واذا صادفتكم مشكلة .. انا حاضر وتحت امركم .. بالتوفيق
  21. اخي .. اذهب الى النموذج بطريقة عرض التصميم ةوعند الحدث ( قبل التحديث ) للنموذج ضع هذا الكــــــــــــــــــــــــــــــود قد يبدو الكود غير واضح أو غير منسق .. لأنه مكتوب باللعة العربية لكن اعمل عملية نسخ .. وضعه في النموذج وسوف يعاد الى وضعه الطبيعي .. هذا لكود يعمل عند حدوث أي تغييرات ويعبر عنه باللغة الانجليزيىة ( ديرتي ) اذا حفظ أو تراجع If Me.Dirty = True Then Dim a As String, b As String Dim c As Long a = " åá ÊÑíÏ íÝÙ ÇáÊÛííÑÇÊ " b = "Êã ÊÛííÑ ÇáÓÌá" c = MsgBox(a, vbYesNo + vbExclamation, b) If c = vbNo Then Cancel = True Me.Undo End If End If
  22. اخي .. لاضافة سجلات جديدة في ( النموذج الفرعي ) دون رؤية السجلات القديمة اذهب الى 1- النموذج الفرعي ووضع المؤشر عند أي خانة 2- من القوائم اختر سجلات 3- اختر ( ادخال بيانات ) وهكذا تضيف بيانات جديدة دون رؤية البيانات السابقة أو السجلات السابقة
×
×
  • اضف...

Important Information