الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

شرح الكود التالي وتصحيحه

مغلقمُجاب
بدأه حسين العميسي في 27 مايو 2013 · 6 رد · 1,578 مشاهدة · في قواعد بيانات Microsoft Access
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله وبركاته\
اساتذتي مشرفين وخبراء الفريق العربي للبرمجة 

لدي جدول معبئ بالبيانات فيه حقول رقمية واخرى نصية ونموذج يعتمد على هذا الجدول
فرضا ليكن لدي في الجدول حقل بأسم (No_a ) رقمي ولدي مثلا في هذا الحقل قيمة ولتكن 2013 تتبع احد السجلات كيف استطيع الذهاب الى هذا السجل بالامر (GoToRecord(ObjectType, ObjectName, Record, Offset
لكي استطيع تعبة حقل آخر بجملة الدوران على ان تبدأ تعبئة الحقل الفارغ من السجل الذي فيه قيمة الحقل No_a=2013
لقد قمت بكتابته بهذه الطريقة 
DoCmd.GoToRecord(,,acGoTo,No_a=2013)
ولكنة لم يعمل فارجو مساعدتي في كتابة هذا الكود حيث اسم النموذج لدي هو form1 والجدول اسمة tble1
واتمنى ان يكون هناك شرح ولو قليل في الرد حتى نستفيد

#2

اخي الفاضل

 

بإمكانك عمل التالي :

 

1. اذهب اولا الى الجدول وقم بفتحه لترى السجلات

2. قم بالتأشير على السجل المطلوب وستجد رقم السجل في اسفل الجدول فقد يكون الثالث او العاشر او  100 او اي رقم 

 

post-15367-0-03157800-1369687804_thumb.g

 

الآن بعد ان عرفت رقم السجل المطلوب استخدم هذا الكود بهذه الطريقة

 

 

DoCmd.GoToRecord acDataForm, "frmMain", acGoTo, 3
 
 
الآن غير رقم السجل الثالث هنا  3   الى رقم السجل الخاص بك في الجدول والذي يحمل القيمة 2013
 
 
بالتوفيق

تم تعديل هذه المشاركة بواسطة zahrah في 27 مايو 2013 في 23:54

1
#3

الاخت الفاضلة ام عهود

شكرا على ردك

بس انا اريد عمل الكود بدون ان افتح الجدول 

بمعنى كيف استطيع ان اعرف رقم السجل المطلوب بواسطة الكود

لاضعه في متغير

وارضع المتغير  بدل الرقم 3

 

في هذا الامر

 

DoCmd.GoToRecord acDataForm, "frmMain", acGoTo, 3

تم تعديل هذه المشاركة بواسطة حسين العميسي في 28 مايو 2013 في 12:25

#4 أفضل إجابة
حسين العميسي كتب:

الاخت الفاضلة ام عهود

شكرا على ردك

بس انا اريد عمل الكود بدون ان افتح الجدول 

بمعنى كيف استطيع ان اعرف رقم السجل المطلوب بواسطة الكود

لاضعه في متغير

وارضع المتغير  بدل الرقم 3

 

في هذا الامر

 

DoCmd.GoToRecord acDataForm, "frmMain", acGoTo, 3

 

 

 

 

تفضل اخي الكريم

 

استخدم هذا الكود كما هو

 

Dim rst As DAO.Recordset
   Set rst = Me.RecordsetClone
   rst.FindFirst "[No_a] = 2013"
   If rst.NoMatch = False Then
      Me.Bookmark = rst.Bookmark
   End If
DoCmd.GoToRecord acDataForm, "form1", acGoTo, CurrentRecord

 

 

سيقوم الكود اولا بالبحث في مجموعة السجلات عن القيمة 2013 في الحقل No_a وعندما يجدها سيكون متوقف عندها 

هنا نسنخدم خاصية الذهاب الى السجل المحدد في الجدول والذي حصلنا على رقمه من مجموعة السجلات السابقة بعد البجث عنه

 

 

بالتوفيق

1
#5
zahrah كتب:

تفضل اخي الكريم

 

استخدم هذا الكود كما هو

 

Dim rst As DAO.Recordset
   Set rst = Me.RecordsetClone
   rst.FindFirst "[No_a] = 2013"
   If rst.NoMatch = False Then
      Me.Bookmark = rst.Bookmark
   End If
DoCmd.GoToRecord acDataForm, "form1", acGoTo, CurrentRecord

 

 

سيقوم الكود اولا بالبحث في مجموعة السجلات عن القيمة 2013 في الحقل No_a وعندما يجدها سيكون متوقف عندها 

هنا نسنخدم خاصية الذهاب الى السجل المحدد في الجدول والذي حصلنا على رقمه من مجموعة السجلات السابقة بعد البجث عنه

 

 

بالتوفيق

 

zahrah كتب:

شكرا اختي ام عهود بس انا برفق مثال انا سحبته من المنتدى وهو لادخال الارقام السرية للطلاب على مجموعات وذلك بعد ان تم ادخال ارقام الجلوس مرة واحدة

المطلوب ادخال ارقام السري على مجموعات بواسطة الامر  DoCmd.GoToRecord

بواسطة الزر في النموذج بواسطة جملة الدوران for     next

بدون استخدام الاستعلام

 

ادخال ارقام مسلسلة على مجموعات.rar

تم تعديل هذه المشاركة بواسطة حسين العميسي في 28 مايو 2013 في 23:31

#7
jjafferr كتب:

الاخ حسين ، اشوفك تشتغل على سؤالين بنفس الموضوع!!

 

اخي جعفر

حبيت افهم الامر 

goto

والعفو على الازعاج

واذا مافيها تعب

كيف اخلي الكود السابق

ياخذ قيمة من مربع نص على النموذج

بدل 2013

تم تعديل هذه المشاركة بواسطة حسين العميسي في 30 مايو 2013 في 22:05

هذا الموضوع مغلق.

مواضيع مشابهة