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

تفعيل والغاء خانة الاختيار حسب اسم المستخدم


الحلبي

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

السلام عليكم 

مطلوب : عند الضغط على زر تفعيل خانة الاختيار  ان يفعل خانة الاختيار فى الفرعى حسب اسم المستخدم

عند الضغط على زر الغاء خانة الاختيار ان يلغى التفعيل فى الفرعى حسب اسم المستخدم

التفعيل والالغاء حسب اسم المستخدم فقط وليس الكل

جزاكم الله خيرا

خانة الاختيار.accdb

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

استاذى ومعلمى / @ابا جودى

وحشنى جدا

هذا الحل البسيط انا اعرفه 

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

جزاك الله كل خير

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

11 دقائق مضت, الحلبي said:

وحشنى جدا

جزاكم الله خيرا

11 دقائق مضت, الحلبي said:

هذا الحل البسيط انا اعرفه 

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

طيب اذا عرف السبب بطل العجب

ما الفارق من وجهة نظرك يا دكتور بين الكود او الوحدة النمطية وهذا الحل البسيط ؟!

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

تم تعديل بواسطه ابا جودى
  • Like 1
رابط هذا التعليق
شارك

معلمى / @ابا جودى

حقك سوف يبطل العجب

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

ومن غير المقول ان اعمل ست استعلامات 

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

استاذي العزيز @الحلبي فكرت كثيرا بمطلبك .. وفكرت ايضا بطريقة استاذنا ابا جودي

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

فما الفائدة من ذلك؟

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

طيب مشاركة مع حبايبنا الاساتذة ..... اظن هذه معروفة ..... صح .....

Private Sub BtnFalse_Click()
    ChkBox = False
    ChkBox.Requery
        DoCmd.SetWarnings False
        DoCmd.RunSQL "UPDATE t2 SET t2.[YesNo] = [Forms]![incom2]![ChkBox] WHERE (((t2.xuser)=[Forms]![incom2]![xuser]));"
        DoCmd.SetWarnings True
End Sub

Private Sub BtnTrue_Click()
    ChkBox = True
    ChkBox.Requery
        DoCmd.SetWarnings False
        DoCmd.RunSQL "UPDATE t2 SET t2.[YesNo] = [Forms]![incom2]![ChkBox] WHERE (((t2.xuser)=[Forms]![incom2]![xuser]));"
        DoCmd.SetWarnings True
End Sub

 

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

استاذنا ومعملنا / @kanory

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

ياريت حضرتك تطبق الكود تبعك على المرفق فى اول المشاركة وتضع لى مرفق

استاذى ومعلمى / @ابا جودى

مش بقولك مروض اكسس الله يفتح عليك

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

جزاكم الله كل خير 

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

استاذ / @kanory

الله يصلح حالك ويرحم ولديك

خلاص طبقت الكود على المثال وكله تمام 

هذا اصغر كود لطلبى 

اشكرك استاذ kanory ويجعله فى ميزان حسناتك

كل الاحترام والتقدير

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

بعد اذن استاذى العزيز ومعلمى القدير الاستاذ @kanory :fff::wink2:

شوف يا دكتور @الحلبي علشـــــــان انا بس بحــــ:wub:ــــبك

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

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

---------

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

اتفضل يا دكتور

اعمل موديول وقم بوضع الاسطر الاتية

Public Function GoOnUpdatChkBox(ByVal strTableName As String, ByVal strFieldNameUbdt As String, ByVal strFieldNameWher As String, ByVal strXuser As String, ByVal strUpdatChkBox As String)
    CurrentDb.Execute "UPDATE [" & strTableName & "] SET [" & strTableName & "].[" & strFieldNameUbdt & "] = '" & strUpdatChkBox & "'  WHERE [" & strFieldNameWher & "] = '" & strXuser & "' ;"
        strTableName = vbNullString
        strFieldNameUbdt = vbNullString
        strFieldNameWher = vbNullString
        strXuser = vbNullString
        strUpdatChkBox = vbNullString
End Function

وفى النموذج ضع الكود الاتى على زر الامر تفعيل

    Call GoOnUpdatChkBox("t2", "yesno", "xuser", Me.xuser, -1)
    Me.t2_subform.Requery

ولزر الامر الغاء التفعيل بس غير فى الكود السابق قيمة -1 الى 0

اى خدمه يا دكتور والطريقة دى من وجهة نظرى افضل من طريقة اللوب

-------------------------------

 

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

Public Function GoOnUpdatChkBox(ByVal strXuser As String, ByVal strUpdatChkBox As String)
    CurrentDb.Execute "UPDATE t2 SET t2.yesno = '" & strUpdatChkBox & "'  WHERE (xuser = '" & strXuser & "');"
    strXuser = vbNullString
    strUpdatChkBox = vbNullString
End Function

وفى النموذج ضع الكود الاتى على زر الامر تفعيل

  Call GoOnUpdatChkBox(Me.xuser, -1)
  Me.t2_subform.Requery

ولزر الامر الغاء التفعيل بس غير فى الكود السابق قيمة -1 الى 0

المرفق الى يوضح الافكار بالطرق الثلاث 

 

خانة الاختيار - 5.accdb

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

استاذي ومعلمة / @ابا جودى

الله الله عليك شرح وافى وواضح جدا جدا 

بجد عبقريى ومروض اكسس بتعمل اللى انت عايزه بدون اى اعتبار لاكسس

جزاك الله خيرا ـ وبارك الله فيك وفى اسرتك ـ ورحم الله والديك 

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

مثال جميل جميل جميل سوف استخدمه فى برنامجى

كل الاحترام والتقدير لشخصكم الكريم

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

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