-
Posts
10020 -
تاريخ الانضمام
-
تاريخ اخر زياره
-
Days Won
408
نوع المحتوي
التقويم
المنتدى
مكتبة الموقع
معرض الصور
المدونات
الوسائط المتعددة
كل منشورات العضو jjafferr
-
وعليكم السلام أستاذ علي بالنسبة الى اولا: المفروض ان النموذج الرئيسي يكون غير مضمن وغير مربوط مع الجدول tbl_Follow4 ، لانك لا تستخدمه لإدخال/استخراج بيانات ، لذا احذف اسم الجدول كمصدر للسجلات: . والسبب الاساسي في عمل سجل فاضي ، هو ادخالك معلومة في الحقل Grade في الجدول ، والمعلومة هي "" اي لا شئ ، اي انك حولت الحقل من Null الى Nothing بينما اسم الحقل الذي يجب ان يكون في الكود هو sGrade مثل sSection . جعفر
-
-
استفسار : طريقة استيراد اكثر من ورقة عمل للاكسس
jjafferr replied to مبرمج على يديكم's topic in قسم الأكسيس Access
وعليكم السلام همم ، طيب ايش رايك في هذين الرابطين: و جعفر -
الحاق ايام محددة بين تاريخين بالجدول المرتبط
jjafferr replied to kaser906's topic in قسم الأكسيس Access
هلا والله وهاي الكود الكامل بالتعديلات: Private Sub cmd1_Click() 'التاكد ان الحقول المطلوبة تم اختيارها في النموذج If Len(Me.StarteDate & "") = 0 Then MsgBox "رجاء ادخال تاريخ البداية" Me.StarteDate.SetFocus Exit Sub ElseIf Len(Me.EndDate & "") = 0 Then MsgBox "رجاء ادخال تاريخ النهاية" Me.EndDate.SetFocus Exit Sub ElseIf (Len(Me.iSunday & "") = 0 Or Me.iSunday = 0) And _ (Len(Me.iMonday & "") = 0 Or Me.iMonday = 0) And _ (Len(Me.iTuesday & "") = 0 Or Me.iTuesday = 0) And _ (Len(Me.iWednesday & "") = 0 Or Me.iWednesday = 0) And _ (Len(Me.iThursday & "") = 0 Or Me.iThursday = 0) Then MsgBox "رجاء الاختيار من ايام التدريب" Exit Sub End If Dim rst As DAO.Recordset Set rst = CurrentDb.OpenRecordset("Select * From Tbl_2") 'عدد الايام بين يومي البداية والنهاية How_Many_Days = UmDateDiff("d", Me.StarteDate, Me.EndDate) For i = 0 To How_Many_Days Next_Date = UmDateAdd("d", i, Me.StarteDate) 'التاريخ الهجري التالي Next_Day2 = UmWeekDayName(UmWeekday(Next_Date)) 'اليوم التالي Next_Day = UmWeekday(Next_Date) 'اليوم التالي بالرقم Next_Date = UmFormat(Next_Date, "yyyy/mm/dd") 'تغيير تنسيق التاريخ 'Debug.Print Next_Day & "-" & Next_Day2 'MsgBox Next_Date & " " & Next_Day add_Day = "" 'اذا تم اختيار اليم في النموذج ، ما هو اليوم If Me.iSunday = -1 And Next_Day = 1 Then add_Day = "الاحد" '"Sunday" ElseIf Me.iMonday = -1 And Next_Day = 2 Then add_Day = "الاثنين" '"Monday" ElseIf Me.iTuesday = -1 And Next_Day = 3 Then add_Day = "الثلاثاء" '"Tuesday" ElseIf Me.iWednesday = -1 And Next_Day = 4 Then add_Day = "الاربعاء" '"Wednesday" ElseIf Me.iThursday = -1 And Next_Day = 5 Then add_Day = "الخميس" '"Thursday" End If 'لدينا تاريخ يجب ادخاله If add_Day <> "" Then 'ولكن هل تم ادخال هذا التاريخ سابقا لهذا PCDigit rst.FindFirst "[PcDigit]=" & Me.PcDigit & " And [TDate] ='" & Next_Date & "'" If rst.NoMatch Then 'غير موجود rst.AddNew rst!TDate = Next_Date: rst!TDay = add_Day: rst!PcDigit = Me.PcDigit: rst!auto_id = Me.auto_id rst.Update Else 'موجود MsgBox "الموظف رقم " & Me.PcDigit & vbCrLf & _ "يوجد لديه تدريب سابق يوم " & add_Day & vbCrLf & _ "بتاريخ " & Next_Date & vbCrLf & vbCrLf & _ "هذا التاريخ لم يتم ادخاله مرة اخرى" End If End If Next i rst.Close: Set rst = Nothing End Sub وهاي المرفق النهائي جعفر 471.tdate.mdb.zip -
الحاق ايام محددة بين تاريخين بالجدول المرتبط
jjafferr replied to kaser906's topic in قسم الأكسيس Access
تفضل استعمل هذا السطر بدل اللي في الكود: For i = 0 To How_Many_Days يعني استعملنا الصفر بدل الواحد. جعفر -
الحاق ايام محددة بين تاريخين بالجدول المرتبط
jjafferr replied to kaser906's topic in قسم الأكسيس Access
تفضل اضف السطر الرابع للكود ، وفي هذا المكان المحدد Next_Date = UmDateAdd("d", i, Me.StarteDate) 'التاريخ الهجري التالي Next_Day2 = UmWeekDayName(UmWeekday(Next_Date)) 'اليوم التالي Next_Day = UmWeekday(Next_Date) 'اليوم التالي بالرقم Next_Date = UmFormat(Next_Date, "yyyy/mm/dd") 'تغيير تنسيق التاريخ جعفر -
سؤال فى قاعدة بيانات تخص اضافة صور مرتبطة
jjafferr replied to ابو جودي's topic in قسم الأكسيس Access
لا والله ما نسيت ، ولكني انشغلت بمواضيع المنتدى ومحاولة مساعدة الباقين -
الحاق ايام محددة بين تاريخين بالجدول المرتبط
jjafferr replied to kaser906's topic in قسم الأكسيس Access
حياك الله 1. الكود يأخذ اي تاريخ هجري (والكود الذي وضعته انت اصلا يخص ام القرى) ، فما في مشكلة ، 2. اعمل نموذج على اساس الجدول Tbl_2 ، وتستطيع ان تغير فيه كما تشاء ، 3. في تنسيق التاريخ لحقل التاريخ ، انت ادخلته كـ dd/mm/yyyy ، والذي يجب ان تعمله هو yyyy/mm/dd ، هذا اذا اردت الرقم 1 يكون 01 (اي رقمين ، وانا انصحك بهذا ، حيث لن تتعب في الفرز) ، بينما اذا اردت التنسيق رقم واحد مثل ما اشرت في مثالك ، فالتنسيق سيكون yyyy/m/d جعفر -
طيب في طريقة اخرى: نعمل ملف mdb خارجي مؤقت في نفس مجلد البرنامج، ونصدر الكلمات اليه ، ونعمل في برنامجك استعلام يأخذ البيانات هذا من الملف الخارجي ، وبالطريقة هذه ، لن يكون هناك ضغط على برنامجك!! هل تصلح لك هذه الطريقة؟ جعفر
-
سجلات ثابتة بشكل قالب وقيمة محسوبة لاحدها
jjafferr replied to محمدنجار's topic in قسم الأكسيس Access
-
سجلات ثابتة بشكل قالب وقيمة محسوبة لاحدها
jjafferr replied to محمدنجار's topic in قسم الأكسيس Access
تفضل جعفر 467.Panel_Calc Value.mdb.zip -
الحاق ايام محددة بين تاريخين بالجدول المرتبط
jjafferr replied to kaser906's topic in قسم الأكسيس Access
أخي كاسر تم تغيير الكود بحيث لا يقرا اليوم ، وانما رقم اليوم في الكود ، فعليه ، المفروض ان يعمل البرنامج الان على جميع الاجهزة ، وهذا هو الكود المُعدل: Private Sub cmd1_Click() 'التاكد ان الحقول المطلوبة تم اختيارها في النموذج If Len(Me.StarteDate & "") = 0 Then MsgBox "رجاء ادخال تاريخ البداية" Me.StarteDate.SetFocus Exit Sub ElseIf Len(Me.EndDate & "") = 0 Then MsgBox "رجاء ادخال تاريخ النهاية" Me.EndDate.SetFocus Exit Sub ElseIf (Len(Me.iSunday & "") = 0 Or Me.iSunday = 0) And _ (Len(Me.iMonday & "") = 0 Or Me.iMonday = 0) And _ (Len(Me.iTuesday & "") = 0 Or Me.iTuesday = 0) And _ (Len(Me.iWednesday & "") = 0 Or Me.iWednesday = 0) And _ (Len(Me.iThursday & "") = 0 Or Me.iThursday = 0) Then MsgBox "رجاء الاختيار من ايام التدريب" Exit Sub End If Dim rst As DAO.Recordset Set rst = CurrentDb.OpenRecordset("Select * From Tbl_2") 'عدد الايام بين يومي البداية والنهاية How_Many_Days = UmDateDiff("d", Me.StarteDate, Me.EndDate) For i = 1 To How_Many_Days Next_Date = UmDateAdd("d", i, Me.StarteDate) 'التاريخ الهجري التالي Next_Day2 = UmWeekDayName(UmWeekday(Next_Date)) 'اليوم التالي Next_Day = UmWeekday(Next_Date) 'اليوم التالي بالرقم 'Debug.Print Next_Day & "-" & Next_Day2 'MsgBox Next_Date & " " & Next_Day add_Day = "" 'اذا تم اختيار اليم في النموذج ، ما هو اليوم If Me.iSunday = -1 And Next_Day = 1 Then add_Day = "الاحد" '"Sunday" ElseIf Me.iMonday = -1 And Next_Day = 2 Then add_Day = "الاثنين" '"Monday" ElseIf Me.iTuesday = -1 And Next_Day = 3 Then add_Day = "الثلاثاء" '"Tuesday" ElseIf Me.iWednesday = -1 And Next_Day = 4 Then add_Day = "الاربعاء" '"Wednesday" ElseIf Me.iThursday = -1 And Next_Day = 5 Then add_Day = "الخميس" '"Thursday" End If 'لدينا تاريخ يجب ادخاله If add_Day <> "" Then 'ولكن هل تم ادخال هذا التاريخ سابقا لهذا PCDigit rst.FindFirst "[PcDigit]=" & Me.PcDigit & " And [TDate] ='" & Next_Date & "'" If rst.NoMatch Then 'غير موجود rst.AddNew rst!TDate = Next_Date: rst!TDay = add_Day: rst!PcDigit = Me.PcDigit: rst!auto_id = Me.auto_id rst.Update Else 'موجود MsgBox "الموظف رقم " & Me.PcDigit & vbCrLf & _ "يوجد لديه تدريب سابق يوم " & add_Day & vbCrLf & _ "بتاريخ " & Next_Date & vbCrLf & vbCrLf & _ "هذا التاريخ لم يتم ادخاله مرة اخرى" End If End If Next i rst.Close: Set rst = Nothing End Sub جعفر 471.tdate.mdb.zip -
هل تريدين ان اصدر البيانات الى الاكسل؟ جعفر
-
الحاق ايام محددة بين تاريخين بالجدول المرتبط
jjafferr replied to kaser906's topic in قسم الأكسيس Access
الحمدلله ، اهم شئ هو الدخول في الكود الشئ الذي يأتي على بالي الآن هو ، ان تنصيب الوندوز عندي انجليزي ، واعتقد عندك عربي ، لهذا السبب ايام الاسبوع قد تكون عندك بالعربي ، بينما هي عندي بالانجليزي ، لذا ، اضف السطر الثالث الى الكود : Next_Date = UmDateAdd("d", i, Me.StarteDate) 'التاريخ الهجري التالي Next_Day = UmWeekDayName(UmWeekday(Next_Date)) 'اليوم التالي debug.print Next_Day . ثم شغل النموذج واضغط على زر الحفظ ، ثم ادخل في الكود واضغط على Ctrl + G او انظر للصورة: . وانسخ لي الاسماء التي في المربع الاحمر الى الموقع لوسمحت ، فانا اشك انها بالعربية ، واريد الاسم بالضبط كما يراه الكمبيوتر جعفر -
الظاهر يا اختي اننا لا نتكلم عن نفس الشئ!! فقد قمت بعمل المطلوب في مشاركاتي السابقة ، ويوجد لديك جدول مؤقت اسمه Table2 ، فما عليك إلا ان تعملي استعلام منه واذا لم يكن هذا قصدك ، فاعتقد انه من الافضل ان اتوقف انا ، وان يواصل معك الاستاذ رمهان ، فقد ينظر للموضوع من وجهة نظر اخرى جعفر
-
الحاق ايام محددة بين تاريخين بالجدول المرتبط
jjafferr replied to kaser906's topic in قسم الأكسيس Access
حياالله كاسر رجاء تتبع الخطوات هذه وتخبرني بالنتيجة تفصيلا: 1. اجعل النموذج في وضع التصميم ، ثم افتح اعدادات الزر "حفظ" ، ثم تبويب الحدث ، والمفروض ان ترى امام الحدث "On Click" الكلمات "[Event Procedure]" ، ثم انقر على الزر الصغير الذي به 3 نقاط (على يمين الصورة) ، هذا سوف يُدخلك في الكود: . 2. على العمود الذي يشير اليه السهم ، وبمحاذات الجملة التي تراها ، انقر بالفأرة اليسار على العمود ، فستلاحظ انه تم عمل نقطة في العمود (كما في الصورة) . 3. ارجع الى النموذج ، وقم بتشغيل النموذج ، واضغط على الزر "حفظ" . 4. سيأخذك البرنامج الى صفحة الكود ، وسترى التظليل الاصفر لنفس السطر الذي عملنا نقطة بجواره . 5. اضغط على الكيبورد على الزر F8 ثلاث مرات ، وسترى ان السطر الاصفر المظلل ذهب الى السطر ، كما اصبح في الصورة . 6. عند الضغط على الزر F8 مرة اخرى ، المفروض ان ترى النموذج وبه صورة الرسالة . رجاء تخبرني اذا كنت ترى ما ارى ، او ان كمبيوترك يرى ما لا ارى جعفر -
شكرا على الايضاح اختي للأسف لا يمكن هذا بدون حفظ البيانات ولو في جدول مؤقت ، او تصدير البيانات الى ملف txt مثلا ، او حتى csv بحث يتم قراءته بالاكسل. جعفر
-
الحاق ايام محددة بين تاريخين بالجدول المرتبط
jjafferr replied to kaser906's topic in قسم الأكسيس Access
الآن تذكرت اخي قيصر ، الظاهر انك فقط اخذت الكود ووضعته في برنامجك !! فالزر في برنامجك السابق لم يكن يذهب للكود ، وانما كنت انت عملت عليه ماكرو ، فرجاء استعمل برنامجي كما هو ، واذا اشتغل ، سنتحدث عن كيفية اضافة الكود لبرنامجك جعفر -
الحاق ايام محددة بين تاريخين بالجدول المرتبط
jjafferr replied to kaser906's topic in قسم الأكسيس Access
الظاهر ان الكود عندك غير مفعّل !! هل تستخدم الاوفيس 2007 او 2010 لأول مرة على جهازك؟ هل لما تشغل البرنامج ، يظهر لك شريط اصفر تحت شريط الادوات في الاكسس: هذا معناه ان الاكسس في حالة حماية لكمبيوترك من هذا البرنامج ، وانه لا يجعل الكود يعمل ، لذلك ، اضغط على الزر في الشريط الاصفر ، وسيعمل البرنامج ان شاء الله اما اذا لم تكن هذه المشكلة ، فعد ، وسنحاول اشياء اخرى لا جعفر -
سجلات ثابتة بشكل قالب وقيمة محسوبة لاحدها
jjafferr replied to محمدنجار's topic in قسم الأكسيس Access
السلام عليكم ::: مصطلح يقال عند حصول امر خارج عن المألوف والمتعارف عليه .. او لم يخطر ببال احد من قبل ... بحيث يفاجأ الاخرين ..وهنا اقصد (( السحر العماني !! شكراعلى الايضاح ، وكان فهمي له قريبا مما قلت بس في يوم من الايام (يمكن يكون شهر 12 سنة 1985) ، حيث كنت في زيارة لمدينة يدرس فيها احد افراد اسرتي في لوس انجلوس بولاية كاليفورنيا في امريكا ، وعلى الغداء اتاه بعض اصدقاءه السعوديين ، وكان احدهم يتذمر من مادة برمجة البيسك التي كان يأخذها في ذلك الوقت ، وان عندهم واجب وما يعرف يحله ، فطلبت منه احضار السؤال لي قبل الغداء ، فسألني ان كنت اعرف ابرمج ، فقلت قليلا ، فذهب الى سيارته وجاء بالواجب ، وخلال الغداء ، وعلى قصاصة ورقة ، كتبت له البرنامج ، وقبل الانتهاء اعطيته القصاصة ، فسألني ما هذا ، فاخبرته انه البرنامج ، فسألني متعجبا (وغير مصدق لفهمي) وكيف كتبت البرنامج وانت لم تقعد امام الكمبيوتر ، فاجبته ان جرب ولا تهتم ، اليوم التالي رجع ابن عمي من الجامعة وقال: صاحبي السعودي سلّم واجب البرنامج واخذ اعلى علامة في الصف ، واخذ البروفيسر يمدح في برمجته بانه عمل مجموعة معطيات معا ، واخبرني ابن عمي ان صاحبه السعودي قال عني: بطران . بالعماني ، بطران معناه متكبر وشايف حاله وقد لا يكون فيه خير ، فقلت لإبن عمي: اساعده ومافيني خير!! فرد عليّ: بالسعودي ، بطران معناه فاهم وشاطر وعليه شايف حاله ، فقبلت ان اكون بطران ، بالسعودي وهنا خفت ان "وأمْرٍ دُبِر بِليلْ" يكون شئ مشابه جعفر -
الحاق ايام محددة بين تاريخين بالجدول المرتبط
jjafferr replied to kaser906's topic in قسم الأكسيس Access
وعليكم السلام هذا لأنك لم تختار اي يوم للتدريب على العموم ، عملت تغييرات في البرنامج ، حتى يحذرك اذا لم تختار الايام او تدخل التواريخ ، واذا تم ادخال التاريخ مسبقا للـ PcDigit فانه يحذرك كذلك وعملت لم الملاحظات في البرنامج ، اذا اردت تغيير اي شئ فيه Private Sub cmd1_Click() 'التاكد ان الحقول المطلوبة تم اختيارها في النموذج If Len(Me.StarteDate & "") = 0 Then MsgBox "رجاء ادخال تاريخ البداية" Me.StarteDate.SetFocus Exit Sub ElseIf Len(Me.EndDate & "") = 0 Then MsgBox "رجاء ادخال تاريخ النهاية" Me.EndDate.SetFocus Exit Sub ElseIf (Len(Me.iSunday & "") = 0 Or Me.iSunday = 0) And _ (Len(Me.iMonday & "") = 0 Or Me.iMonday = 0) And _ (Len(Me.iTuesday & "") = 0 Or Me.iTuesday = 0) And _ (Len(Me.iWednesday & "") = 0 Or Me.iWednesday = 0) And _ (Len(Me.iThursday & "") = 0 Or Me.iThursday = 0) Then MsgBox "رجاء الاختيار من ايام التدريب" Exit Sub End If Dim rst As DAO.Recordset Set rst = CurrentDb.OpenRecordset("Select * From Tbl_2") 'عدد الايام بين يومي البداية والنهاية How_Many_Days = UmDateDiff("d", Me.StarteDate, Me.EndDate) For i = 1 To How_Many_Days Next_Date = UmDateAdd("d", i, Me.StarteDate) 'التاريخ الهجري التالي Next_Day = UmWeekDayName(UmWeekday(Next_Date)) 'اليوم التالي 'MsgBox Next_Date & " " & Next_Day add_Day = "" 'اذا تم اختيار اليم في النموذج ، ما هو اليوم If Me.iSunday = -1 And Next_Day = "Sunday" Then add_Day = "الاحد" ElseIf Me.iMonday = -1 And Next_Day = "Monday" Then add_Day = "الاثنين" ElseIf Me.iTuesday = -1 And Next_Day = "Tuesday" Then add_Day = "الثلاثاء" ElseIf Me.iWednesday = -1 And Next_Day = "Wednesday" Then add_Day = "الاربعاء" ElseIf Me.iThursday = -1 And Next_Day = "Thursday" Then add_Day = "الخميس" End If 'لدينا تاريخ يجب ادخاله If add_Day <> "" Then 'ولكن هل تم ادخال هذا التاريخ سابقا لهذا PCDigit rst.FindFirst "[PcDigit]=" & Me.PcDigit & " And [TDate] ='" & Next_Date & "'" If rst.NoMatch Then 'غير موجود rst.AddNew rst!TDate = Next_Date: rst!TDay = add_Day: rst!PcDigit = Me.PcDigit: rst!auto_id = Me.auto_id rst.Update Else 'موجود MsgBox "الموظف رقم " & Me.PcDigit & vbCrLf & _ "يوجد لديه تدريب سابق يوم " & add_Day & vbCrLf & _ "بتاريخ " & Next_Date & vbCrLf & vbCrLf & _ "هذا التاريخ لم يتم ادخاله مرة اخرى" End If End If Next i rst.Close: Set rst = Nothing End Sub . جعفر 471.tdate.mdb.zip -
أخي seef2003 رجاء فتح موضوع آخر بإسم واضح يوضح طلبك ، وان شاء الله ستحصل على الرد جعفر
-
سجلات ثابتة بشكل قالب وقيمة محسوبة لاحدها
jjafferr replied to محمدنجار's topic in قسم الأكسيس Access
ايش رايك ، لما تضغط على زر "أضف سجلات" (لاحظ اننا سنغير الاسم) ، يظهر لك نموذج فيه قائمة بأسماء المأكولات ، وجنب كل أكلة علامة صح ، فانت تختار الاكلات التي تريد جلبها للقائمة ، وبغض النظر عن عددها ، والكود يجيب اللي تختاره بس ياريت اعرف شو قصدك بـ: وأمْرٍ دُبِر بِليلْ جعفر -
الحاق ايام محددة بين تاريخين بالجدول المرتبط
jjafferr replied to kaser906's topic in قسم الأكسيس Access
تفضل . والكود الذي يقوم بهذا العمل: Private Sub cmd1_Click() Dim rst As DAO.Recordset Set rst = CurrentDb.OpenRecordset("Select * From Tbl_2") How_Many_Days = UmDateDiff("d", Me.StarteDate, Me.EndDate) For i = 1 To How_Many_Days Next_Date = UmDateAdd("d", i, Me.StarteDate) Next_Day = UmWeekDayName(UmWeekday(Next_Date)) 'MsgBox Next_Date & " " & Next_Day add_Day = "" If Me.iSunday = -1 And Next_Day = "Sunday" Then add_Day = "Sunday" ElseIf Me.iMonday = -1 And Next_Day = "Monday" Then add_Day = "Monday" ElseIf Me.iTuesday = -1 And Next_Day = "Tuesday" Then add_Day = "Tuesday" ElseIf Me.iWednesday = -1 And Next_Day = "Wednesday" Then add_Day = "Wednesday" ElseIf Me.iThursday = -1 And Next_Day = "Thursday" Then add_Day = "Thursday" End If If add_Day <> "" Then rst.AddNew rst!TDate = Next_Date: rst!TDay = add_Day: rst!PcDigit = Me.PcDigit: rst!auto_id = Me.auto_id rst.Update End If Next i rst.Close: Set rst = Nothing End Sub جعفر 471.tdate.mdb.zip -
اسم الموضوع مخالف ، يُقفل الموضوع . جعفر