محسن سرحان قام بنشر مارس 4, 2008 قام بنشر مارس 4, 2008 اقوم برصد مجموعة من الدرجات على نموذج في اكسس واثناء تسجيل الدرجات اقوم بعرض النموذج على هيئة داتا شيت فيأتى المؤشر اسفل في اخر سجل وانا اريد طريقة برمجية من خلالها يتم عرض النموذج بحيث يظهر الكتابة في نصف او وسط الشاشة وشكرا
Dream_Works قام بنشر مارس 5, 2008 قام بنشر مارس 5, 2008 أخي الكريم حسب فهمي لموضوعك أعتقد أن الحل كالتالي Private Sub Form_Load() Const RecordsPerPage As Byte = 20 Dim DestinationRecord As Byte, RecordsCount As Byte RecordsCount = DCount("*", Me.RecordSource) If RecordsCount >= RecordsPerPage Then DestinationRecord = 10 Else DestinationRecord = RecordsCount / 2 End If DoCmd.GoToRecord acDataForm, Me.Name, acGoTo, DestinationRecord End Sub ملحوظة : يمكنك تحديد أكبر عدد من الصفوف يمكن عرضه في الصفحة الواحدة حسب حجم نموذجك و الذي قدرته أنا ب 20 ... يمكنك تغييره من الكود بالتوفيق إن شاء الله
محب العلم قام بنشر مارس 5, 2008 قام بنشر مارس 5, 2008 حل جميل من أخي Dream_Works ، أخي محسن سرحان ، بإمكانك أيضا استغلال فكرة الكود الذي زودت يه وعمل الآتي : اقتراحي أن يتم فتح النموذج في المكان الذي أغلق فيه ... في حدث عند الخروج من النموذج الذي يعرض لك datasheet تقوم بتخزين مؤشر السجل الحالي في جدول ما (جدول تعريفات أو ما شابه) في حدث عند التحميل للنموذج تسترجع قيمة المؤشر وتفتح النموذج على ذلك السجل ستبدو النتيجة وكأنك لم تغلق النموذج
محسن سرحان قام بنشر مارس 5, 2008 الكاتب قام بنشر مارس 5, 2008 (معدل) اخى وحبيبي Dream_Works يبدو اننى لم اوضح سؤالى انا اريد ان اكتب في السجلات ويكون النموذج في المنتصف الشاشة مش في اسفل الشاشة وارجو ان تضع مثال هذا مرفق صورة لعلها توضح ما اريد untitled11.rar تم تعديل مارس 6, 2008 بواسطه Dream_Works
Dream_Works قام بنشر مارس 6, 2008 قام بنشر مارس 6, 2008 أرجو أن أكون قد فهمتك بشكل صحيح الآن أنت لا تريد عرض كل السجلات الموجودة في الجدول و لكن آخر عدد معين من السجلات الذي يسمح بالعرض لنصف النموذج الرجاء القيام بالخطوات التالية: 1- إنشاء استعلام جديد يحتوي عى جميع القيم المطلوبة ... ووضع قيمة Top Values بالعدد المطلوب عرضه لملئ نصف الصفحة حسب حجم النموذج ... ووضع ترتيبه تنازلي 2- اجعل البيانات في النموذج تؤخذ من الاستعلام 3- قم بتعديل الترتيب الموجود في النموذج باستخدام خاصية ( Order By ) للحقل الذي رتبته تنازليا بالاستعلام حتى تعيده تصاعدياً مرة أخرى 4- بعد عمل الإجراءات السابقة ستكون قد اختصرت الكود بشكل كبير حتى يصبح كالتالي : Private Sub Form_AfterUpdate() Me.Requery End Sub Private Sub Form_Load() DoCmd.GoToRecord acDataForm, Me.Name, acNewRec End Sub و بالتالي كلما تضيف سجل جديد يضل عدد السجلات المعروضة ثابت لا يزداد و لا يتناقص New_Microsoft_Office_Access_2003_Database.rar
محسن سرحان قام بنشر مارس 9, 2008 الكاتب قام بنشر مارس 9, 2008 اخى العزيز اشكرك جدا على مجهودك لكنى اريد عندما ازيد في الكتابة يزيد هو القيمة بحيث تظل الكتابة في منتصف الصفحة وشكرا
محسن سرحان قام بنشر مارس 11, 2008 الكاتب قام بنشر مارس 11, 2008 اخى العزيز انا جربت ولم تفلح المحاولة ارجو ان تقوم انت بالتجريب ووضع مثال
محسن سرحان قام بنشر مارس 12, 2008 الكاتب قام بنشر مارس 12, 2008 اخى العزيز انا جربت ولم تفلح المحاولة ارجو ان تقوم انت بالتجريب ووضع مثال
Dream_Works قام بنشر مارس 12, 2008 قام بنشر مارس 12, 2008 (معدل) لكنى اريد عندما ازيد في الكتابة يزيد هو القيمة بحيث تظل الكتابة في منتصف الصفحة إذا زادت القيمة ... لن تظل الكتابة في منتصف الصفحة بل ستنزل إلى الأسفل ... لذلك اعتقد أن الحل الذي قدمته هو الذي سيحافظ على المستوى الثابت لعرض السجلات أفضل تعديل يمكن وضعه هو إزالة الكود الموجود في الحدث AfterUpdate ووضع هذا الكود مكانه في الحدث AfterInsert Private Sub Form_AfterInsert() Me.Requery DoCmd.GoToRecord , , acNewRec End Sub تم تعديل مارس 12, 2008 بواسطه Dream_Works
Dream_Works قام بنشر مارس 23, 2008 قام بنشر مارس 23, 2008 أفضل تعديل يمكن وضعه هو إزالة الكود الموجود في الحدث AfterUpdate ووضع هذا الكود مكانه في الحدث AfterInsert التعديلات المطلوبة كانت بسيطة لذلك اعتقد أنك ستقوم بها ... المهم تفضل الملف الجديد و أرجو أن يكون به ما طلبت New_Microsoft_Office_Access_2003_Database.zip
محسن سرحان قام بنشر مارس 24, 2008 الكاتب قام بنشر مارس 24, 2008 الله الله على الابداع اشكرك اخى ولكن لى طلب اخير اريد مؤشر الكتابة عنما يبدا سجل جديد يكون في الحقل الى انا واقف فيه ولكن المثال عند بداية سجل جديد دائما يأتى في حقل id وانا اريد مثلا لو كنت اكتب في حقل اخر عند بداية حقل ديد ان يأتى في نفس العمود الى انا كنت باكتب فيه وشكرا
Dream_Works قام بنشر مارس 25, 2008 قام بنشر مارس 25, 2008 أرجو أن تقوم بتعديل كود الحدث AfterInsert ليصبح كالتالي Private Sub Form_AfterInsert() Dim ActiveControlName As String ActiveControlName = Me.ActiveControl.Name Me.Requery DoCmd.GoToRecord , Record:=acNewRec Me(ActiveControlName).SetFocus End Sub أرجو أن يكون هذا طلبك
محسن سرحان قام بنشر مارس 25, 2008 الكاتب قام بنشر مارس 25, 2008 الله الله على الابداع والعبقرية ربنا يجزيك عنا خيرا كبيرا المثال جميل وكل ما تخيلته وجدته ولكن كرم اخلاقك جعلنى اطمع في ان اطلب منك طلب اخر وهو "المفروض ان عندى الف طالب في المدرسة بارقام جلوس من 1 الى 1000 اريد ان اقف عند اخر رقم انا كتبته وليكن رقم 100 والنموذج يضع المؤشر في الخانه المقابلة لرقم 101 ولكن ما يحدث في النموذج انه يقوم بالكتابة في سجل جديد بالمرة فانا اريد ان اكتب بجوار رقم جلوس الطالب في خانات كثيرة خانة مادة اللغة العربية ثم خانة الدراسات ثم الرياضيات الخ00000000" ولكن ما يحدث انه يكتب في خانات جديدة بالكلية وهذا يرجع لعدم توضيح سؤالى ولكن اعذرنى ولك منى الف الف مليار شكر
Dream_Works قام بنشر مارس 26, 2008 قام بنشر مارس 26, 2008 المثال الموجود عندي لا يحتوي الا حقلين ... ID , Txt فلا توجد لدي الخانات الكثيرة التي تتحدث عنها
محسن سرحان قام بنشر مارس 26, 2008 الكاتب قام بنشر مارس 26, 2008 قصدت سجلات جديدة انا اريد ان يكتب في سجل موجود ولكنه فارغ وشكرا
Dream_Works قام بنشر مارس 27, 2008 قام بنشر مارس 27, 2008 أخي الكريم إنشغلت ببعض الأمور خلال الأيام الماضية أرجو أ، يكون هذا هو المطلوب Dream_New_Microsoft_Office_Access_2003_Database.zip
الردود الموصى بها
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.