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

كود تغيير لون الخط في حقل في نموذج وتقرير بشرطين


Alhaithm

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

مطلوب كود لتغير لون الخط في حقل رقمي في النموذج وفي التقرير عندما يتحقق شرطان ، شرط في قيمة الحقل وشرط في قيمة حقل آخر في نفس النموذج.

للتوضيح

إذا كانت قيمة الحقل الحالي TR أكبر من 16 وكانت قيمة الحقل ANC في النموذج تساوي 1 فيجب أن يكون لون الخط في الحقل  TR أحمر ، ولكن إذا كانت أقل من 10 فيجب أن يكون لون الخط في الحقل TR أزرق

وإذا كانت قيمة الحقل الحالي TR أكبر من 18 وكانت قيمة الحقل ANC في النموذج تساوي 2 فيجب أن يكون لون الخط في الحقل  TR أحمر ، ولكن إذا كانت أقل من 7 فيجب أن يكون لون الخط في الحقل TR أزرق

 

أرجو أن أحصل على هذا الكود مع تحياتي وتقديري

 

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

جرب هذا في النموذج

Private Sub Form_Current()
If Me.ANC = 1 Then
If Me.TR > 16 Then Me.TR.ForeColor = 255
If Me.TR < 10 Then Me.TR.ForeColor = 16711680
ElseIf Me.ANC = 2 Then
If Me.TR > 18 Then Me.TR.ForeColor = 255
If Me.TR < 7 Then Me.TR.ForeColor = 16711680
Else
Me.TR.ForeColor = 0
End If
End Sub

 

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

للفائدة

Private Sub Form_Current()
Me.TR1.ForeColor = 0
If Me.ANC = 1 Then
If Me.TR1 > 16 Then Me.TR1.ForeColor = 16711680
If Me.TR1 < 11 Then Me.TR1.ForeColor = 255
ElseIf Me.ANC = 2 Then
If Me.TR1 > 12 Then Me.TR1.ForeColor = 16711680
If Me.TR1 < 8 Then Me.TR1.ForeColor = 255
Else
Me.TR1.ForeColor = 0
End If

End Sub
 

ثم

Private Sub TR1_AfterUpdate()
Me.TR1.ForeColor = 0
If Me.ANC = 1 Then
If Me.TR1 > 16 Then Me.TR1.ForeColor = 16711680
If Me.TR1 < 11 Then Me.TR1.ForeColor = 255
ElseIf Me.ANC = 2 Then
If Me.TR1 > 12 Then Me.TR1.ForeColor = 16711680
If Me.TR1 < 8 Then Me.TR1.ForeColor = 255
Else
Me.TR1.ForeColor = 0
End If

End Sub
 

ثم

Private Sub ANC_AfterUpdate()
Me.TR1.ForeColor = 0
If Me.ANC = 1 Then
If Me.TR1 > 16 Then Me.TR1.ForeColor = 16711680
If Me.TR1 < 11 Then Me.TR1.ForeColor = 255
ElseIf Me.ANC = 2 Then
If Me.TR1 > 12 Then Me.TR1.ForeColor = 16711680
If Me.TR1 < 8 Then Me.TR1.ForeColor = 255
Else
Me.TR1.ForeColor = 0
End If

End Sub
 

أما في التقرير


Private Sub Report_Activate()
Me.TR1.ForeColor = 0
If Me.ANC = 1 Then
If Me.TR1 > 16 Then Me.TR1.ForeColor = 16711680
If Me.TR1 < 11 Then Me.TR1.ForeColor = 255
ElseIf Me.ANC = 2 Then
If Me.TR1 > 12 Then Me.TR1.ForeColor = 16711680
If Me.TR1 < 8 Then Me.TR1.ForeColor = 255
Else
Me.TR1.ForeColor = 0
End If

End Sub
 

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

 

فهل لك ملاحظة أو تعديل علماء بأن عدد الحقول التي سيطبق عليها هذا الكود في النموذج نفسه 34 حقل كل حقل بقيمة مختلفة

من حيث أكبر قيمة وأصغر قيمة ، الثابت فقط اللون أزرق ,احمر وأسود افتراضي ، وحقل ANC فقط 1 أو 2

أما حقل TR1  فعددها 34 بتسلسل TR1 , TR2 , TR3  وهكذا فهل من اختصار

تحياتي وتقديري

 

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

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

 

فهل لك ملاحظة أو تعديل علماء بأن عدد الحقول التي سيطبق عليها هذا الكود في النموذج نفسه 34 حقل كل حقل بقيمة مختلفة

من حيث أكبر قيمة وأصغر قيمة ، الثابت فقط اللون أزرق ,احمر وأسود افتراضي ، وحقل ANC فقط 1 أو 2

أما حقل TR1  فعددها 34 بتسلسل TR1 , TR2 , TR3  وهكذا فهل من اختصار

تحياتي وتقديري

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

2 ساعات مضت, Alhaithm said:

للفائدة

Private Sub Form_Current()
Me.TR1.ForeColor = 0
If Me.ANC = 1 Then
If Me.TR1 > 16 Then Me.TR1.ForeColor = 16711680
If Me.TR1 < 11 Then Me.TR1.ForeColor = 255
ElseIf Me.ANC = 2 Then
If Me.TR1 > 12 Then Me.TR1.ForeColor = 16711680
If Me.TR1 < 8 Then Me.TR1.ForeColor = 255
Else
Me.TR1.ForeColor = 0
End If

End Sub
 

ثم

Private Sub TR1_AfterUpdate()
Me.TR1.ForeColor = 0
If Me.ANC = 1 Then
If Me.TR1 > 16 Then Me.TR1.ForeColor = 16711680
If Me.TR1 < 11 Then Me.TR1.ForeColor = 255
ElseIf Me.ANC = 2 Then
If Me.TR1 > 12 Then Me.TR1.ForeColor = 16711680
If Me.TR1 < 8 Then Me.TR1.ForeColor = 255
Else
Me.TR1.ForeColor = 0
End If

End Sub
 

ثم

Private Sub ANC_AfterUpdate()
Me.TR1.ForeColor = 0
If Me.ANC = 1 Then
If Me.TR1 > 16 Then Me.TR1.ForeColor = 16711680
If Me.TR1 < 11 Then Me.TR1.ForeColor = 255
ElseIf Me.ANC = 2 Then
If Me.TR1 > 12 Then Me.TR1.ForeColor = 16711680
If Me.TR1 < 8 Then Me.TR1.ForeColor = 255
Else
Me.TR1.ForeColor = 0
End If

End Sub
 

أما في التقرير


Private Sub Report_Activate()
Me.TR1.ForeColor = 0
If Me.ANC = 1 Then
If Me.TR1 > 16 Then Me.TR1.ForeColor = 16711680
If Me.TR1 < 11 Then Me.TR1.ForeColor = 255
ElseIf Me.ANC = 2 Then
If Me.TR1 > 12 Then Me.TR1.ForeColor = 16711680
If Me.TR1 < 8 Then Me.TR1.ForeColor = 255
Else
Me.TR1.ForeColor = 0
End If

End Sub
 

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

 

فهل لك ملاحظة أو تعديل علماء بأن عدد الحقول التي سيطبق عليها هذا الكود في النموذج نفسه 34 حقل كل حقل بقيمة مختلفة

من حيث أكبر قيمة وأصغر قيمة ، الثابت فقط اللون أزرق ,احمر وأسود افتراضي ، وحقل ANC فقط 1 أو 2

أما حقل TR1  فعددها 34 بتسلسل TR1 , TR2 , TR3  وهكذا فهل من اختصار

تحياتي وتقديري

 

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

مثلا كتبت هذا الكود الاسفل في حدث الحالي وتريد ان تستخدم نفس الكود في حدث اخر

2 ساعات مضت, Alhaithm said:

Private Sub Form_Current()
Me.TR1.ForeColor = 0
If Me.ANC = 1 Then
If Me.TR1 > 16 Then Me.TR1.ForeColor = 16711680
If Me.TR1 < 11 Then Me.TR1.ForeColor = 255
ElseIf Me.ANC = 2 Then
If Me.TR1 > 12 Then Me.TR1.ForeColor = 16711680
If Me.TR1 < 8 Then Me.TR1.ForeColor = 255
Else
Me.TR1.ForeColor = 0
End If

End Sub

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

Form_Current

تحياتي

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

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