اذهب الي المحتوي
أوفيسنا

تحديد اللون حسب بشرط


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

السلام عليكم ورحمه الله وبركاته 

عندي نموذج طلاب وبه مواد ( عربي - رياضيات - انجليزي )

محتاج احدد الصف من Combo Box

وبعدها اقوم بتحديد اللون حسب الاختيار ( ازرق - اخضر - احمر - اصفر )

بعد اختيار اللون يتم التطبيق علي طلاب الصف المحددين فقط وادراج القيمة في الجدول للطلاب المحددين للصف فقط

انا قمت بالعملية من خلال الاستعلام لكن الموضوع صعب جدا 

الخطوات اللي محتاجها 

تحديد الصف 

العربي مثلا اخضر 

يتم تحول الخلايه كلها الي اخضر 

وشكرا

تحديد اللون بشرط.accdb

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

اتفضل 

استخدم الكود الاتى كروتين عام لعدم كتابة وتكرار الاكواد اكثر من مره حسب عدد الأعمدة

Function DoColoer(ByRef Obj As Object) As String
  Select Case Nz(Obj, "")
    Case Is = "": DoColoer = vbWhite
    Case Is = 1: DoColoer = vbBlue
    Case Is = 2: DoColoer = vbGreen
    Case Is = 3: DoColoer = vbYellow
    Case Is = 4: DoColoer = vbRed
    Case Else
  End Select
End Function

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

ObjectName.BackColor = DoColoer(ComboBoxName)

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

واخيرا المرفق بعد التطبيق 

 

تحديد اللون بشرط.accdb

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

شكرا لرد حضرتك والمتابعة 

اخطأت في الوصف اللي محتاجه 

المفروض يكون كل الخلاية Combo Box

مثل المثال المرفق انا محتاج احدد الصف واعلم مثلا اخضر لمادة العربي 

يتم تحديد المادة عربي للصف المحدد فقط وليس كل الصفوف

المثلا بالمرفقات واعتذر لحضرتك

تحديد اللون بشرط1.accdb

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

5 ساعات مضت, ابو جودي said:

اتفضل 

استخدم الكود الاتى كروتين عام لعدم كتابة وتكرار الاكواد اكثر من مره حسب عدد الأعمدة

Function DoColoer(ByRef Obj As Object) As String
  Select Case Nz(Obj, "")
    Case Is = "": DoColoer = vbWhite
    Case Is = 1: DoColoer = vbBlue
    Case Is = 2: DoColoer = vbGreen
    Case Is = 3: DoColoer = vbYellow
    Case Is = 4: DoColoer = vbRed
    Case Else
  End Select
End Function

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

ObjectName.BackColor = DoColoer(ComboBoxName)

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

واخيرا المرفق بعد التطبيق 

 

تحديد اللون بشرط.accdb 548 kB · 7 downloads

 

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

من خلال التنسيق الشرطي تستطيع تنفيذ ما تردي 

قمت بتنفيذ طلبك على عمود Arab

image.png.e027d28ce9f51398263229f352861cc6.png

 

image.png.d183e325522b052941fae7ad4c6956e4.png

image.png.c1150adab7a9cff0c576e286c58762d6.png

حل للتقارير متعددة الأعمدة_01.zip

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

ويمكن كتابة الدالة كالتالي:
 

Function GetColor(Clr As Byte) As Long
    Select Case Clr
        Case 1:    GetColor = vbBlue
        Case 2:    GetColor = vbGreen
        Case 3:    GetColor = vbYellow
        Case 4:    GetColor = vbRed
        Case Else: GetColor = vbWhite
    End Select
End Function

أو هكذا:
 

Function GetColor(ByVal Clr As Variant) As Long
    Select Case Nz(Clr, 0)
        Case 1:    Clr = vbBlue
        Case 2:    Clr = vbGreen
        Case 3:    Clr = vbYellow
        Case 4:    Clr = vbRed
        Case Else: Clr = vbWhite
    End Select
    GetColor = Clr
End Function

 

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

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