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

سؤال عن استخدام قيم من السجل الاخير فى السجل الجديد من الاستعلام


إذهب إلى أفضل إجابة Solved by jjafferr,

الردود الموصى بها

السلام عليكم 

بعد اذنكم انا عندى استفسار موضح فى الشكل الاتى

Untitled.png.b3136efc61bb4476a270f61995bd8e8f.png

انا عاوزه اعمل الاتى

المربع الازرق الفاضى فى الشكل ده المفروض يكون يساوى قيمة المربع اللى متعلم بدائره حمراء +1
يعنى المفروض يكون 2

ممكن اعرف ازاى اعمل كده انا عملت كود على مربع التحرير والسرد المفروض عند التحديث ده يتم

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

qs.rar

تم تعديل بواسطه عبق الرياحيين
رابط هذا التعليق
شارك

طبعا الرقم 1  اللى موجود داخل الدائره الحمراء  فى الزياره التاليه سيكون  2 فى الحالة دى يكون المربع الازرق بيساوى  3
والزيارة التاليه الرقم فى المربع الاحمر 3 ولكن طبقا لحالة العمل المفروض يرجع يعد من الرقم 1 مرة اخرى 

 

لذلك انا فكرت استخدم   dlast   مش نفع معايا

فى الاول استخدمت dmax  ونفع لكن بدء الترقيم من الرقم 1 مرة اخرى اختلف فيه كل شئ

 

تنويه ايضا فى باقى الحقول الفارغه حيكون فى عمليات حسابيه ولكن بدون تسلسل ولكنها ستعتمد على نفس الرقم الموجود فى السجل السابق لكل مربع نص

يعنى مثلا مربع النص  csn  الفارغ للسجل الاخير والمطلوب اكماله سيعتمد على الرقم فى نفس مربع النص للسجل اللى قبله اللى حيكون طبقا للشكل المرفق  297

تم تعديل بواسطه عبق الرياحيين
رابط هذا التعليق
شارك

وعليكم السلام:smile:

 

تفضلي

    Dim rst As DAO.Recordset
    Dim RC As Integer
    Dim C As Integer
    
    Set rst = CurrentDb.OpenRecordset("Select * From qry_workscope_utility")
    rst.MoveLast: rst.MoveFirst
    RC = rst.RecordCount
    
    rst.MoveNext
    C = rst!VisitNo
    rst.MovePrevious
    rst.Edit
        rst!VisitNo = C + 1
    rst.Update
    
    rst.Close: Set rst = Nothing

 

جعفر

  • Like 1
رابط هذا التعليق
شارك

6 دقائق مضت, jjafferr said:

وعليكم السلام:smile:

 

تفضلي


    Dim rst As DAO.Recordset
    Dim RC As Integer
    Dim C As Integer
    
    Set rst = CurrentDb.OpenRecordset("Select * From qry_workscope_utility")
    rst.MoveLast: rst.MoveFirst
    RC = rst.RecordCount
    
    rst.MoveNext
    C = rst!VisitNo
    rst.MovePrevious
    rst.Edit
        rst!VisitNo = C + 1
    rst.Update
    
    rst.Close: Set rst = Nothing

 

جعفر

شكرا لاهتمام حضرتك استاذ جعفر لكن انا مش فاهمه حاجه بصراحه

اعمل ايه

انا مسحت الاكواد بتاعتى اللى على مربع التحرير والسرد وحطيت الكود ده بس مش شغال

 

ممكن بس تشرح لو تكرمت معلش انا اسفه انا مش متمكنه فى الاكسس انا مبتدئه

اشتغل لما قفلت النموذج وفتحته تانى طب اعمل ايه علشان يشتغل من غير ما اقفل وافتح معلش انا اسفه

تم تعديل بواسطه عبق الرياحيين
رابط هذا التعليق
شارك

 

14 دقائق مضت, عبق الرياحيين said:

1. انا مسحت الاكواد بتاعتى اللى على مربع التحرير والسرد وحطيت الكود ده بس مش شغال

2. اشتغل لما قفلت النموذج وفتحته تانى طب اعمل ايه علشان يشتغل من غير ما اقفل وافتح معلش انا اسفه

 

1و2. تمام:smile:

بس اكتبي السطر التالي في النهاية

Me.frm_WORKSCOPE.Requery

 

جعفر

  • Like 1
رابط هذا التعليق
شارك

الان, jjafferr said:

 

 

1و2. تمام:smile:

بس اكتبي السطر التالي في النهاية


Me.frm_WORKSCOPE.Requery

 

جعفر

طيب تمام معلش حصلت لى مشكله كمان

احيانا رقم واحد اللى فى الدائرة الحمراء بيكون  بدلا من الرقم واحد   NA

فى الحالة دى المفروض المربع الازرف لا يساوى شئ ويظل فارغا كما هو انا مش عارفه اعدل دى على الكود بتاع حضرتك

معلش انا اسفه تقلت على حضرتك

رابط هذا التعليق
شارك

طيب الكود بالشكل ده يكون صح 
 

Dim rst As DAO.Recordset
    Dim RC 'As Integer
    Dim C 'As Integer
    
    Set rst = CurrentDb.OpenRecordset("Select * From qry_workscope_utility")
    rst.MoveLast: rst.MoveFirst
    RC = rst.RecordCount
    
    rst.MoveNext
    C = rst!VisitNo
    rst.MovePrevious
    If C = "NA" Then
    Else
    
    If IsNull(Form_frm_WORKSCOPE.VisitNo) Or Form_frm_WORKSCOPE.VisitNo = "" Then

    rst.Edit
    rst!VisitNo = C + 1
    rst.Update
    rst.Close: Set rst = Nothing

End If
End If

Me.frm_WORKSCOPE.Requery

لو ان بدلا من  1 فى الدائرة الحمراء كلمة  NA  
ولو أرقام يستكل الكود 

9 دقائق مضت, jjafferr said:

 


غيري السطر 
rst!VisitNo = C + 1

الى
rst!VisitNo = IIf(C = "NA", "", C + 1)

 

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

شكرا ليك يا استاذ جعفر ربنا يكرمك انت مش عارف انت عملت فيه ايه الله يكرمك

9 دقائق مضت, jjafferr said:

 


غيري السطر 
rst!VisitNo = C + 1

الى
rst!VisitNo = IIf(C = "NA", "", C + 1)

 

طيب معلش انا اسفه انا غيرت السطر وطلع الخطأ ده انا مش فاهمه ايه ده او يقصد ايه فى رسالة الخطأ دى اعمل ايه

qs-2.rar

تم تعديل بواسطه عبق الرياحيين
رابط هذا التعليق
شارك

 

بالنسبة للتغيير اللي انتي عملتيه ، استخدمي التعديل التالي ، وراح يشتغل الكود

Dim rst As DAO.Recordset
    Dim RC 'As Integer
    Dim C 'As Integer
    
    Set rst = CurrentDb.OpenRecordset("Select * From qry_workscope_utility")
    rst.MoveLast: rst.MoveFirst
    RC = rst.RecordCount
    
    rst.MoveNext
    C = rst!VisitNo
    rst.MovePrevious
    If C = "NA" Then
    Else
    
'    If IsNull(Form_frm_WORKSCOPE.VisitNo) Or Form_frm_WORKSCOPE.VisitNo = "" Then

    rst.Edit
    rst!VisitNo = C + 1
    rst.Update
    Me.frm_WORKSCOPE.Requery
    
'End If
End If
rst.Close: Set rst = Nothing

 

جعفر

  • Like 1
رابط هذا التعليق
شارك

الان, jjafferr said:

 

بالنسبة للتغيير اللي انتي عملتيه ، استخدمي التعديل التالي ، وراح يشتغل الكود


Dim rst As DAO.Recordset
    Dim RC 'As Integer
    Dim C 'As Integer
    
    Set rst = CurrentDb.OpenRecordset("Select * From qry_workscope_utility")
    rst.MoveLast: rst.MoveFirst
    RC = rst.RecordCount
    
    rst.MoveNext
    C = rst!VisitNo
    rst.MovePrevious
    If C = "NA" Then
    Else
    
'    If IsNull(Form_frm_WORKSCOPE.VisitNo) Or Form_frm_WORKSCOPE.VisitNo = "" Then

    rst.Edit
    rst!VisitNo = C + 1
    rst.Update
    Me.frm_WORKSCOPE.Requery
    
'End If
End If
rst.Close: Set rst = Nothing

 

جعفر

يعنى اشتغل بالكود ده علشان المشكله اللى حصلت مع الكود الأصلى بتاع حضرتك بعد تعديل السطر ده ؟

14 دقائق مضت, jjafferr said:

 


غيري السطر 
rst!VisitNo = C + 1

الى
rst!VisitNo = IIf(C = "NA", "", C + 1)

 

 واللا ايه ؟

رابط هذا التعليق
شارك

5 دقائق مضت, jjafferr said:

بالنسبة الى الخطأ ، اعملي هذا التغيير على السطر


rst!VisitNo = IIf(IsNumeric(C), C + 1, "")

 

 

والآن عندك كودين يشتغلون ، وانتي اختاري الكود اللي يريحك:smile:

 

جعفر

للاسف 

rst!VisitNo = IIf(IsNumeric(C), C + 1, "")

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

انا اسفه جدا جدا جدا جدا على تعب حضرتك اجهدت حضرتك معايا

تم تعديل بواسطه عبق الرياحيين
رابط هذا التعليق
شارك

  • أفضل إجابة

انا اعتذر منك ، لم اجرب الكود قبل ان اضعه لك:blink:

 

واليك التغيير ، بعد التجربة:

    Dim rst As DAO.Recordset
    Dim C 'As Integer
    
    Set rst = CurrentDb.OpenRecordset("Select * From qry_workscope_utility")
    rst.MoveLast: rst.MoveFirst
    
    rst.MoveNext
    C = rst!VisitNo
    rst.MovePrevious
    
    rst.Edit
        If C <> "NA" Then
            rst!VisitNo = C + 1
        End If
    rst.Update
    
    rst.Close: Set rst = Nothing

    Me.frm_WORKSCOPE.Requery

 

جعفر

  • Like 1
رابط هذا التعليق
شارك

21 ساعات مضت, jjafferr said:

انا اعتذر منك ، لم اجرب الكود قبل ان اضعه لك:blink:

 

واليك التغيير ، بعد التجربة:


    Dim rst As DAO.Recordset
    Dim C 'As Integer
    
    Set rst = CurrentDb.OpenRecordset("Select * From qry_workscope_utility")
    rst.MoveLast: rst.MoveFirst
    
    rst.MoveNext
    C = rst!VisitNo
    rst.MovePrevious
    
    rst.Edit
        If C <> "NA" Then
            rst!VisitNo = C + 1
        End If
    rst.Update
    
    rst.Close: Set rst = Nothing

    Me.frm_WORKSCOPE.Requery

 

جعفر

انا اللى باعتذر جدا جدا جدا لتعب حضرتك شكراا جدا جدا 

بس حصل مشكلة تانى معايا فى الحسابات التانيه راح استأذن من حضرتك متابعة الموضوع الجديد هأعمل موضوع جديد بالسؤال الجديد علشان التزم بقانون المنتدى

رابط هذا التعليق
شارك

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information