ازهر عبد العزيز قام بنشر الإثنين at 09:55 مشاركة قام بنشر الإثنين at 09:55 السلام عليكم في النموذج fnumber يوجد نموذج فرعي يحتوي ارقام قد تزيد وقد تنقص احتاج ترتيب هذة الارقم من 1 الى نهاية الارقام من خلال الزر الموجود في النموذج الرئيسي اي .......12345 بمعنى لوفرضنا انة لدي 50 سجل وتم حذف السجل رقم 40 يتم يصبح عدد السجلات 49 ويتم ارجاع القيمة بارجاع القيمة 40 المحذوفة بدل السجل 50 اتمنى ان تكون الفكرة واضحة numbers.accdb 1 رابط هذا التعليق شارك More sharing options...
Foksh قام بنشر الإثنين at 10:19 مشاركة قام بنشر الإثنين at 10:19 يعني لو انت حذفت السجل رقم 40 ، وبعدها بوقت ثاني جيت وضفت سجل جديد . تريد السجل الجديد يكون رقمه 40 بدلاً من 51 !!!!!!!! رابط هذا التعليق شارك More sharing options...
ازهر عبد العزيز قام بنشر الإثنين at 10:27 الكاتب مشاركة قام بنشر الإثنين at 10:27 6 دقائق مضت, Foksh said: يعني لو انت حذفت السجل رقم 40 ، وبعدها بوقت ثاني جيت وضفت سجل جديد . تريد السجل الجديد يكون رقمه 40 بدلاً من 51 اخي باختصار احتاج ان تكون هذة الارقام مرتبة دائما بشكل تلقائي سواء حذف او اضافة رابط هذا التعليق شارك More sharing options...
Foksh قام بنشر الإثنين at 10:29 مشاركة قام بنشر الإثنين at 10:29 (معدل) 3 ساعات مضت, ازهر عبد العزيز said: اخي باختصار احتاج ان تكون هذة الارقام مرتبة دائما بشكل تلقائي سواء حذف او اضافة لا يا صديقي ، لا تختصر حتى تتوضح الصورة تم تعديل الإثنين at 13:40 بواسطه Foksh رابط هذا التعليق شارك More sharing options...
أفضل إجابة Barna قام بنشر الإثنين at 11:47 أفضل إجابة مشاركة قام بنشر الإثنين at 11:47 جرب هذا ..... Dim rst As DAO.Recordset Dim biggest_Number As Long Dim i As Long Dim RC As Long biggest_Number = Len(DMax("[num]", "fnumber")) Set rst = CurrentDb.OpenRecordset("Select * From fnumber") rst.MoveLast: rst.MoveFirst RC = rst.RecordCount For i = 0 To RC - 1 rst.Edit rst!num = 1 + i rst.Update rst.MoveNext Next i rst.Close: Set rst = Nothing MsgBox "Done" 1 رابط هذا التعليق شارك More sharing options...
ازهر عبد العزيز قام بنشر الإثنين at 12:06 الكاتب مشاركة قام بنشر الإثنين at 12:06 17 دقائق مضت, Barna said: جرب هذا ..... استاذ شكرا جزيلا لكن هناك مشكلة لا اريدة ان يعد على الارقام الموجودة في الجدول اريدة يعدل على الارقام الموجودة في النموذج الفرعي فقط لاني احتاج اعمل فرز ثم اقوم بترتيب الارقام ارجو ان تكون الفكرة واضحة رابط هذا التعليق شارك More sharing options...
Barna قام بنشر الإثنين at 14:01 مشاركة قام بنشر الإثنين at 14:01 1 ساعه مضت, ازهر عبد العزيز said: لا اريدة ان يعد على الارقام الموجودة في الجدول اريدة يعدل على الارقام الموجودة في النموذج الفرعي فقط تفضل Dim rst As DAO.Recordset Dim i As Long Dim RC As Long Set rst = Forms!fnumbermain!fnumbersub.Form.RecordsetClone rst.MoveLast: rst.MoveFirst RC = rst.RecordCount For i = 0 To RC - 1 rst.Edit rst!num = 1 + i rst.Update rst.MoveNext Next i rst.Close: Set rst = Nothing MsgBox "Done" 1 رابط هذا التعليق شارك More sharing options...
ازهر عبد العزيز قام بنشر الإثنين at 14:05 الكاتب مشاركة قام بنشر الإثنين at 14:05 زادك الله من فضلة جزيل الشكر يااخي وهو المطلوب رابط هذا التعليق شارك More sharing options...
شايب قام بنشر الثلاثاء at 10:38 مشاركة قام بنشر الثلاثاء at 10:38 20 ساعات مضت, ازهر عبد العزيز said: لا اريدة ان يعد على الارقام الموجودة في الجدول اريدة يعدل على الارقام الموجودة في النموذج الفرعي فقط لاني احتاج اعمل فرز ثم اقوم بترتيب الارقام ارجو ان تكون الفكرة واضحة 18 ساعات مضت, Barna said: تفضل الحقيقة ان الطريقة الاولى بالتعامل مع الجدول مباشرة من خلال مصدر السجلات او الطريقة الثاني بجعل مصدر السجلات النموذج الفرعي تعطي نفس النتيجة لكون مصدر سجلات الفرعي نفس الجدول واي تغيير او تعديل للبيات سوف ينعكس على الجدول لذا في هذه الحالة يعتقد الاخ شايب ان الكود الاول اسرع ويتضح ذلك عندما يكون عدد السجلات كبير فاذا اردناء اعادة الترقيم في النموذج الفرعي وتجاوز الفراغات بعد حذف بعض السجلات مع بقاء الجدول بدون تعديل فيمكن استخدام جدول مؤقت والعدد الكبير يقودنا الى سبب وضع هذه المداخلة اكسس يتيح عدد 9500 سجل يمكن تامينها فاذا كان لدينا عدد سجلات اكبر من ذلك فسوف نحصل على رسالة خطأ برقم 3052 لذا عند الرغبة في تنفيذ مثل هذا الكود لعدد سجلات اكبر مما تسمح القيمة الافتراضية فيتطلب اما التعديل على الريجستري او عمل كود ينفذ عند فتح القاعدة باستخدام مايكروا بدء التشغيل او تنفيذ الامر من خلال الاشارة اليه في رأس الكود الخاص باستاذنا البرناوي ويكتفى الاخ شايب بماسبق 1 رابط هذا التعليق شارك More sharing options...
Foksh قام بنشر الثلاثاء at 10:57 مشاركة قام بنشر الثلاثاء at 10:57 17 دقائق مضت, شايب said: اكسس يتيح عدد 9500 سجل يمكن تامينها فاذا كان لدينا عدد سجلات اكبر من ذلك فسوف نحصل على رسالة خطأ برقم 3052 ما شاء الله ، معلومة قيمة وجديدة علي وأعتقد على الأغلبية أيضاً .. بارك الله فيك أستاذنا الشايب 1 رابط هذا التعليق شارك More sharing options...
Barna قام بنشر الثلاثاء at 11:33 مشاركة قام بنشر الثلاثاء at 11:33 47 دقائق مضت, شايب said: الحقيقة ان الطريقة الاولى بالتعامل مع الجدول مباشرة اشكرك اخي @شايب على التعقيب .... لذلك وضع له في البداية الكود الاول وحسب طلبه ادرجت الثاني 48 دقائق مضت, شايب said: فيتطلب اما التعديل على الريجستري انا دائما ( رأي شخصي ) اتردد في التعديل على الريجستري في برامجي .... هل هذا التردد في محله ؟ من وجهة نظر @شايب .... علما اني امتلك بفضل الله معلومات كافية حول ذلك ... رابط هذا التعليق شارك More sharing options...
شايب قام بنشر الثلاثاء at 12:07 مشاركة قام بنشر الثلاثاء at 12:07 منذ ساعه, Foksh said: ما شاء الله ، معلومة قيمة وجديدة علي وأعتقد على الأغلبية أيضاً .. بارك الله فيك أستاذنا الشايب بعض مما عندكم 🌹 29 دقائق مضت, Barna said: نا دائما ( رأي شخصي ) اتردد في التعديل على الريجستري في برامجي .... هل هذا التردد في محله ؟ من وجهة نظر @شايب .... نعم في محلة لذا كان الاخ شايب عند الاضطرار يعمل التعديل عند فتح القاعدة ثم يعيد القيمة الافتراضية عند اغلاقها طبعا التعديل والاعادة اما بملف دفعي او من خلال الكود وفي الحالتين بدون تدخل المستخدم 32 دقائق مضت, Barna said: علما اني امتلك بفضل الله معلومات كافية حول ذلك ... لاشك في ذلك استاذنا 🌹 1 1 رابط هذا التعليق شارك More sharing options...
الردود الموصى بها
من فضلك سجل دخول لتتمكن من التعليق
ستتمكن من اضافه تعليقات بعد التسجيل
سجل دخولك الان