اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

رمهان

الخبراء
  • Posts

    2,390
  • تاريخ الانضمام

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

  • Days Won

    24

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

  1. اخي عبدالله تفضل سطر واحد من الكود !! مع ملاحظة متطلب بسيط : قم بانشاء حقل جديد بالجدول وباسم id ونوعه ترقيم تلقائي واحفظ الجدول واعرض البيانات سترى تسلسل جديد تلقائي وهو معرف للسجل ! ثم اذهب للنموذج ضع هذا السطر في حدث قبل التحديث للنموذج ! If Nz(DLookup("id", "[تنظيم الجدول]", "[كود اليوم]&[الفترة]&[القاعة]&[الدكتور]='" & كود_اليوم & الفترة & القاعة & الدكتور & "'"), 0) <> id Then Cancel = MsgBox("مكرر") هناك حل اخر وهو ان تجعل الأربع حقول في الجدول مفهرسين بدون تكرار ! حيث تظلل عليهم جميعا في حالة عرض التصميم للجدول ثم كليك على علامة المفتاح وبكذا يكونون الأربع امامهم علامة المفتاح ! بالتوفيق
  2. اخيراً ... معناته الآن الكود مش شغال وما ينفعشي في الحدث قبل التحديث للنموذج ! لكي يعمل الكود معك تمام ضعه عند حدث بعد التحديث لكل مربع من مربعات المقارنة اي عند الفترة وكود اليوم والقاعة والدكتور .. او نعطيك حل رمهاني .. سهل ومجاني .. نصلي الفجر .. ونعود .. تحياتي
  3. معناته انت واقع في الفخ !!!! ماهوه انا قلت لك من اول جرب : اعمل تغيير لرمز المادة مثلا او للشعبة لواحد من السجلات بدون ما تغير في حقول المقارنة !! شف ايش يصير معاك !!!!
  4. معليش اخوي عبدالله : انت واضع الكود عند اي حدث ؟؟ هل هو على مستوى النموذج وعند حدث قبل التحيث ؟؟ ام اين ؟؟
  5. السؤال الان : هل الشعبة ورمز المادة داخلة في شرط عدم التكرار ؟ ام فقط المقارنة تتم مع كود اليوم والدكتور والفترة والقاعة ؟؟
  6. على فكرة !! الكود جميل .. ولكن فيه فخ بسيط ! جرب ان تعدل الشعبه ! او المادة! حيث ليسا ضمن الشرط .. حبيت اعرف مصدر الكود اخي عبدالله من وين.. تحياتي
  7. المشكلة ان هناك الامر movefirst كأمر بالانتقال وليس هناك سجلات كالعموم ضع الامر التالي في اول الكود وهو بمثابة حل مبدئي . لاني اكتب من الموبايل. On error resume next بالتوفيق
  8. فكرة جميلة !! مشكور
  9. اخي عبدالله الصق كودك السابق في حدث قبل التحديث للنموذج !! سيفي بالغرض ! بالتوفيق
  10. اوك اخي عبدالله لم اعرف انك تحتاج المساعدة فقط في جدول "تنظيم الجدول" عذرا" ونعوضك في شرح الكود ! اولا اتوقع ان الحدث هو قبل التحديث للنموذج ثانيا الشرح : ''تعريف كائن مجموعة السجلات Dim rst As Recordset ''اسناد قيمة للكائن وهي مجموعة سجلات النموذج الحالية Set rst = Me.RecordsetClone ''اذهب لاول سجل لانه يريد المرور على جميع السجلات rst.MoveFirst '' احد الجمل التي تساعد على الدوران - حلقة - وبالعربي لف حتى النهاية Do Until rst.EOF ''والتي هي تمثل بيانات الموجودة وبين البيانات التي بالنوذج الجديدة rst'هنا مربط الفرس فبدأ يقارن ماهو موجود بمجموعة السجلات '' فعند تطابق جميع الشروط ادناه تظهر رسالة ويعمل تراجع والخروج من الدوران والذهاب لامر الانتقال للسجل الثاني If rst![كود اليوم] = Me![كود اليوم] And rst![الفترة] = Me![الفترة] And rst![القاعة] = Me![القاعة] And rst![الدكتور] = Me![الدكتور] Then ''الرسالة MsgBox " يوجد تعارض بالجدول ", vbExclamation + vbMsgBoxRight + vbMsgBoxRtlReading, " تنبيه" ''التراجع والغاء الحدث Me.Undo DoCmd.CancelEvent ''نقل التركيز لكود اليوم لتعديل البيانات [كود اليوم].SetFocus ''الخروج من الدوران حيث وجد التكرار Exit Do End If '' الانتقال الى سجل جديد لفحصه rst.MoveNext Loop ''اغلاق الكائن rst.Close ولو حبيت ترفق النموذج ونضع لك حل رمهاني مختزل ومختصر واسهل !! بالتوفيق
  11. ربحان !!!! اكيد !!! طبعا صدقني بالله ان هذا الحل هوه اللي في بالي خاصة لما سألت الاخ عن هل ممكن اضافة تسلسل !! وانت ما شاء الله كفيت ووفيت ونفذت !! وعلى فكرة هذا يستحق موضوع جديد لانه جديد بالمنتدى !! فهناك محاولات للحل غير مباشرة ! وللعلم فقط : يكتفى بهذا المعيار : Not In (SELECT First(mared_id) FROM jandbi GROUP BY ID,DateDay;) الآن اخي مارد : مارايك ان يتم الحذف وبدون اصافة تسلسل ؟ اي جدول السائل كما هو ؟؟ نفكر جميعا !! تحياتي
  12. اخ عبدالله طلبك يحتاج لتفرغ للاجابة !! فهو بمثابة طلب برنامج ! كما انه يوجد به بعض الامور المتقدمة !! هذا للعلم والامل في الاخوة الاعزاء ! تحياتي
  13. برافو استاذ مارد لكن ايش رايك بتعديل بسيط جدا !! اضف المعامل not لتصبح not in !! وخلاص مرة واحدة يحذف المكرر !! وانت والله مرة بتجاوب حاجات صعبة ومرة ماتزبطشي معاك !! بالتوفيق للجميع
  14. عزيزي هناك سؤالين :1. بعد حذف التكرار من الجدول : هل سيتم ادخال تكرار مرة اخرى ومن ثم الحذف كل مرة ؟ 2. هل ممكن يضاف عمود تسلسل للجدول ؟ كما لو تتفضل بشرح للبرنامج وعبارة عن ماذا ؟ تحياتي
  15. عزيزي واخونا السيد ظهر لي انه لابد من تحويل نوع البيانات الى عدد صحيح طويل او نص ! افضل نص . قم بالخطوات التالية: 1. احذف المفتاح الاساسي 2. غير نوع البيانات لنص 3.احذف السجلات التي تحتوي قيما خالية لان المفتاح الاساسي لايقبل ذلك 4.اعد وضعه مفتاح اساسي تحياتي اسف رفعتها قبل قراءة ردك !! والحمدلله ان الخطأ لم يخرج من ما توقع رمهان وفي اول رد ! وفي الاحتمال رقم 2 بالتحديد !! حياكم الله الاستاذ السيد الجوهري .. المبرمج والمحاسب .. جمعتم المجد من اطرافه .....
  16. اوك ! لحظات ! تحياتي
  17. الان اخي السيد : ماهو اسم العمود في الجدول الذي تريد البحث بواسطته؟ اي الذي يستقبل القيمة من مربع البحث ؟
  18. اهلا باك اخ عبدالله دائما استفساراتك جميلة ومهنية ! فما بال الاستفسار التالي http://www.officena.net/ib/index.php?showtopic=41590&hl= حبذا تفيدنا كيف تصرفت ؟؟ نتشرف بالتعرف على محاسب محترف امثالك . تحياتي
  19. كلام جميل جدا ! كلام صحيح لا غبار عليه ! واسمح لي باضافة : ما تم اختياره لا يظهر في القائمة !! تحياتي
  20. ارسل ملف به جدول ال accountsub فقط وبدون بيانات !! موافق ؟؟
  21. اخي وائل ضع هذا السطر قبل التحديث للنموذج الفرعي Private Sub Form_BeforeUpdate(cancel As Integer) If IsNull(Qty) Then cancel = MsgBox("ادخل الكمية") End Sub بلتوفيق
  22. اخي السيد هذا الكود شغل قديم !! هذه الطريقة تستخدم زمان في الفيجول بيسك 4 !! عندما كانت مكتبات برمجة قواعد البيانات DAO محدودة ! والسطر If IsNull(Txtserch) Then Exit Sub زائد وبدون فائدة ! مارايك ان نغير لك الكود بأفضل وبنفس النتيجة ! احتاج رسالة الخطأ ! رجعتنا لبرمجة زمان اخ الجوهري !! ارفق قاعدة البيانات !! فقط جدول الحسابات الفرعي ونموذجه ! هذا ويحتمل الخطا في : 1. ادخال الدالة val على قيمة مربع البحث rs.Seek "=", val(Txtserch.Value) 2. تركيبة الجداول !! فلابد من رؤيتها ! تحياتي
  23. ال elseif هي احد اساليب التحكم في سير البرنامج وتستخدم اذا كان هناك اكثر من شرط وخاصة عندما تكون الشروط متداخلة .. حيث تغلف ب if واحدة .
  24. هو خطأ مطبعي في أسماء الجداول ! نسخت ولصقت بدون ما اغير الكود ! سهرانيين واسفين ! والحقيقة هناك حل مختصر ولكن حبيت ازيد الحل ب elseif عاجبني شكلها في الكود !! ولا اعلم المصدر الذي به انه ال elseif لا تصلح مع شرطين من جدولين !! حاولت افهم ما قدرت !! Private Sub Form_BeforeUpdate(Cancel As Integer) If DCount("*", "table2", "rkm_alktah=form!rkm_alktah") = 0 Then Cancel = MsgBox("not found") ElseIf DCount("*", "table1", "rkm_alktah=form!rkm_alktah") = 1 And Me.NewRecord Then Cancel = MsgBox("duplicate") ElseIf DCount("*", "table1", "rkm_alktah=form!rkm_alktah") = 1 And alktah.Value <> alktah.OldValue Then Cancel = MsgBox("duplicate") End If End Sub بالتوفيق
×
×
  • اضف...

Important Information