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

محتاجه كود يعمل تحديد الكل والغاء الكل


safaa salem5
إذهب إلى أفضل إجابة Solved by شايب,

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

 

محتاجه كود يعمل تحديد الكل والغاء الكل

option button

 بدل ما اختار كل واحده لوحدها مع العلم مفيش  تحتهم اى شروط

 

Screenshot_1.png

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

9 minutes ago, محمد احمد لطفى said:

تفضلى بالتوفيق
 

DoCmd.RunSQL "UPDATE اسم_الاستعلام SET اسم_الحقل = True;"

 

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

وتحت الزرار دا احط الكود بتاعك 

Just now, safaa salem5 said:

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

وتحت الزرار دا احط الكود بتاعك 

طيب لو عايزه اعمل الاستعلام على هيئة كودهيكون ازاى

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

يجب وضع مثال للعمل عليه هذا
 

DoCmd.RunSQL "UPDATE اسم_الاستعلام SET اسم_الحقل = True;"

اذا كان اسم الاستعلام او الجدول مصدر النموذح و الحقل

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

تفضلى يعمل على 

option button
 

 

    Dim frm As Form
    Dim ctl As Control
    Dim optionName As String
    Dim i As Integer
    
    ' يمكنك استبدال "اسم_نموذج" بالاسم الفعلي لنموذجك
    Set frm = Forms("Nameformx")
    
    ' تحديد جميع أزرار الاختيار (Option Buttons) في النموذج بناءً على الأسماء المحددة
    For i = 0 To 14
        optionName = "خيار" & i
        On Error Resume Next
        Set ctl = frm.Controls(optionName)
        On Error GoTo 0
        If Not ctl Is Nothing Then
            If TypeOf ctl Is Access.OptionButton Then
                ctl.Value = True
            End If
        End If
    Next i

 

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

3 minutes ago, محمد احمد لطفى said:

تفضلى يعمل على 

option button
 

 

    Dim frm As Form
    Dim ctl As Control
    Dim optionName As String
    Dim i As Integer
    
    ' يمكنك استبدال "اسم_نموذج" بالاسم الفعلي لنموذجك
    Set frm = Forms("Nameformx")
    
    ' تحديد جميع أزرار الاختيار (Option Buttons) في النموذج بناءً على الأسماء المحددة
    For i = 0 To 14
        optionName = "خيار" & i
        On Error Resume Next
        Set ctl = frm.Controls(optionName)
        On Error GoTo 0
        If Not ctl Is Nothing Then
            If TypeOf ctl Is Access.OptionButton Then
                ctl.Value = True
            End If
        End If
    Next i

 

 

تحديد الكل والغاء الكل.rar

ادخل فورم

reservation_frm

وبعدين زرار الباركود

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

  • safaa salem5 changed the title to محتاجه كود يعمل تحديد الكل والغاء الكل
22 minutes ago, محمد احمد لطفى said:

تفضلى يعمل على 

option button
 

 

    Dim frm As Form
    Dim ctl As Control
    Dim optionName As String
    Dim i As Integer
    
    ' يمكنك استبدال "اسم_نموذج" بالاسم الفعلي لنموذجك
    Set frm = Forms("Nameformx")
    
    ' تحديد جميع أزرار الاختيار (Option Buttons) في النموذج بناءً على الأسماء المحددة
    For i = 0 To 14
        optionName = "خيار" & i
        On Error Resume Next
        Set ctl = frm.Controls(optionName)
        On Error GoTo 0
        If Not ctl Is Nothing Then
            If TypeOf ctl Is Access.OptionButton Then
                ctl.Value = True
            End If
        End If
    Next i

 

مش عارفه اطبقه عشان الفورم مش رئيسى دا صب فورم جوا فورم

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

مشاركة مع اخي الاستاذ @محمد احمد لطفى

ضعي الكود التالي تحت زر تحديد الكل 

DoCmd.RunSQL "UPDATE test_order_tbl SET drawn=true;"
Me.Requery

والكود التالي تحت زر الغاء الكل 

DoCmd.RunSQL "UPDATE test_order_tbl SET drawn=false;"
Me.Requery

تفضلي الملف 

تحديد الكل والغاء الكل.rar

تم تعديل بواسطه Eng.Qassim
  • Thanks 1
رابط هذا التعليق
شارك

40 minutes ago, Eng.Qassim said:

مشاركة مع اخي الاستاذ @محمد احمد لطفى

ضعي الكود التالي تحت زر تحديد الكل 

DoCmd.RunSQL "UPDATE test_order_tbl SET drawn=true;"
Me.Requery

والكود التالي تحت زر الغاء الكل 

DoCmd.RunSQL "UPDATE test_order_tbl SET drawn=false;"
Me.Requery

تفضلي الملف 

تحديد الكل والغاء الكل.rar 131.43 kB · 0 downloads

بص هو كدا بيعمل 

update 

لكل الجدول 

انا عايزه احط شرط

اقوله ينفذ الاستعلام لنفس 

id 

الموجود معايا فى الفورم

وعايزه الغى رساله الاكسيس اللى بتظهر

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

مشاركة مع الاساتذة بدون الحاجة لاستعلام

فقط نتعامل مع مصدر السجلات ونسنده للنموذج الفرعي

ثم نستخدم حلقة دوارة تعدل قيمة الحقل

في زر الامر اختيار الكل نضع الامر

Dim rst As Recordset
Dim a As Integer
Set rst = Me.Sub.Form.Recordset
rst.MoveFirst
For a = 0 To rst.RecordCount - 1
rst.Edit
rst!drawn = -1
rst.Update
rst.MoveNext
Next a
Me.Sub.Requery

وفي زر الغاء الكل نضع

Dim rst As Recordset
Dim a As Integer
Set rst = Me.Sub.Form.Recordset
rst.MoveFirst
For a = 0 To rst.RecordCount - 1
rst.Edit
rst!drawn = 0
rst.Update
rst.MoveNext
Next a
Me.Sub.Requery

الملف مرفق

الشايب

 

تحديد الكل والغاء الكل.accdb

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

20 minutes ago, شايب said:

مشاركة مع الاساتذة بدون الحاجة لاستعلام

فقط نتعامل مع مصدر السجلات ونسنده للنموذج الفرعي

ثم نستخدم حلقة دوارة تعدل قيمة الحقل

في زر الامر اختيار الكل نضع الامر

Dim rst As Recordset
Dim a As Integer
Set rst = Me.Sub.Form.Recordset
rst.MoveFirst
For a = 0 To rst.RecordCount - 1
rst.Edit
rst!drawn = -1
rst.Update
rst.MoveNext
Next a
Me.Sub.Requery

وفي زر الغاء الكل نضع

Dim rst As Recordset
Dim a As Integer
Set rst = Me.Sub.Form.Recordset
rst.MoveFirst
For a = 0 To rst.RecordCount - 1
rst.Edit
rst!drawn = 0
rst.Update
rst.MoveNext
Next a
Me.Sub.Requery

الملف مرفق

الشايب

 

تحديد الكل والغاء الكل.accdb 1.06 MB · 5 downloads

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

Screenshot_3.png

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

10 دقائق مضت, safaa salem5 said:

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

احنا حددنا اسم الخانة الخاصة بالاختيار

rst!drawn

الموضوع بسيط بنفس الطريقة للخانة الثانية عند سحب الكل والغاء الكل فقط نعدل السطر السابع الى

rst!test=-1
وللالغاء
rst!test=0

على افتراض ان اسم خانة الاختيار الثانية test

 

 

 

 

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

9 ساعات مضت, شايب said:

الموضوع بسيط بنفس الطريقة للخانة الثانية عند سحب الكل والغاء الكل فقط نعدل السطر السابع الى

اخيرا الاخ شايب يرغب في ايضاح اخير

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

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

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

واستخدام متغير رقمي في اعلى النموذج تتحدد قيمته من خلال ازرار الامر ونحتاج هنا الى ارقام من 1 الى 4

وفي الاجراء نستخدم Select Case

بحيث اذا كان المتغير =1 يكون التعديل للحقل drawn وتكون قيمته =-1 وان كان المتغير =2 تكون قيمة الحقل =0

وهكذا عند ارسال رقم 3 يكون التعديل للحقل send اختيار الكل ورقم 4 للالغاء لنفس الحقل

اي ان الكود مكتوب مرة واحدة ويقوم باربعة وظائف ويكون دور ازرار الامر فقط لتحديد قيمة المتغير واستدعاء الاجراء الفرعي

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

اخونا الشايب

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

5 ساعات مضت, safaa salem5 said:

ممكن حضرتك تطبيق الشرح

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

بداية في اعلى النموذج نعلن عن متغير رقمي

Public s As Byte

ثم نعمل اجراء على النحو التالي

Sub sl()
Dim rst As Recordset
Dim a As Integer
Set rst = Me.Sub.Form.Recordset
rst.MoveFirst
For a = 0 To rst.RecordCount - 1
rst.Edit
Select Case s
Case Is = 1
rst!drawn = -1
Case Is = 2
rst!send = -1
Case Is = 3
rst!drawn = 0
Case Is = 4
rst!send = 0
End Select
rst.Update
rst.MoveNext
Next a
Me.Sub.Requery
s = 0
End Sub

ثم في زر الامر نضع

s = 1
sl

وقيمة المتغيير s تتغير لكل زر امر وفقا لعمله في الكود

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

الملف مرفق

 

تحديد الكل والغاء الكل.accdb

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

34 minutes ago, شايب said:

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

بداية في اعلى النموذج نعلن عن متغير رقمي

Public s As Byte

ثم نعمل اجراء على النحو التالي

Sub sl()
Dim rst As Recordset
Dim a As Integer
Set rst = Me.Sub.Form.Recordset
rst.MoveFirst
For a = 0 To rst.RecordCount - 1
rst.Edit
Select Case s
Case Is = 1
rst!drawn = -1
Case Is = 2
rst!send = -1
Case Is = 3
rst!drawn = 0
Case Is = 4
rst!send = 0
End Select
rst.Update
rst.MoveNext
Next a
Me.Sub.Requery
s = 0
End Sub

ثم في زر الامر نضع

s = 1
sl

وقيمة المتغيير s تتغير لكل زر امر وفقا لعمله في الكود

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

الملف مرفق

 

تحديد الكل والغاء الكل.accdb 1.12 MB · 4 downloads

تعبتك معايا لشكرا لحضرتك جدا بارك الله فيك وجعلك دائما عونا لنا

thanks.gif

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

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