elghoultk قام بنشر فبراير 20, 2022 مشاركة قام بنشر فبراير 20, 2022 لدينا مربع نص ومطلوب ان تظهر الجمله فيه بخط سميك عندما يحتوي علي اي رقم قيمته اكبر من 5 مع العلم انه سيحتوي علي اكثر من رقم مثال ( 15 - 20) رابط هذا التعليق شارك More sharing options...
Moosak قام بنشر فبراير 21, 2022 مشاركة قام بنشر فبراير 21, 2022 اعمل تنسيق شرطي للخلية أخي العزيز .. بحيث لوكان قيمة مربع النص >5 يكون الخط سميك .. هذا حسب ما فهمته على فرض أن محتوى الخلية كله أرقام ، إلا إن كان قصدك أن محتوى الخلية يكون عبارة عن نص هكذا = ( 15 - 20) ؟ فالحل سيكون مختلف . للتكرم بالتوضيح . 2 رابط هذا التعليق شارك More sharing options...
kanory قام بنشر فبراير 21, 2022 مشاركة قام بنشر فبراير 21, 2022 16 ساعات مضت, elghoultk said: لدينا مربع نص ومطلوب ان تظهر الجمله فيه بخط سميك عندما يحتوي علي اي رقم قيمته اكبر من 5 مع العلم انه سيحتوي علي اكثر من رقم مثال ( 15 - 20) جرب هذا مع تغيير بيانات الكود حسب بيانات النموذج لديك ...... Dim strnum As String Dim iCounter As Integer Dim arrnum() As String Dim Rep_lace As String strnum = Me.kan Rep_lace = Replace(strnum, "(", "") Rep_lace = Replace(Rep_lace, ")", "") arrnum = Split(Rep_lace, "-") For iCounter = LBound(arrnum) To UBound(arrnum) If arrnum(iCounter) > 5 Then With Me.kan .FontBold = True .ForeColor = 255 End With Else With Me.kan .FontBold = False .ForeColor = 0 End With End If Next 5 1 رابط هذا التعليق شارك More sharing options...
Moosak قام بنشر فبراير 21, 2022 مشاركة قام بنشر فبراير 21, 2022 هذا الحل الذي أعددته في حال أن الأخ @elghoultk قال أن حقل النص بهذه الطريقة ( 15 - 20) .. ولكن قد سبقني بها عكاشة @kanory 😅 الحل أن تضع هذه الدالة في محرر الأكواد : Public Sub Check(FiledName As Control) Dim X As Integer Dim Count As Integer Dim TL As Integer Dim L As String TL = Len(FiledName) For X = 1 To TL L = Mid(FiledName, X, 1) If IsNumeric(L) = True Then If L > 5 Then Count = Count + 1 End If End If Next X If Count > 0 Then FiledName.FontBold = True FiledName.ForeColor = vbRed Else FiledName.FontBold = False FiledName.ForeColor = vbBlack End If End Sub ثم تناديها عند حدث بعد التغيير لمربع النص + وكذلك عند حدث في الحالي للنموذج .. هكذا : ( ولا تنسى تغيير اسم مربع النص ) 🙂 Private Sub Form_Current() If IsNull(Me.NumberxTxt) Then Exit Sub Check NumberxTxt End Sub Private Sub NumberxTxt_AfterUpdate() Check NumberxTxt End Sub والنتيجة عند عدم وجود رقم أكبر من الخمسة : وعند تحقق المطلوب : مرفق المثال : الرقم 5.accdb 3 1 رابط هذا التعليق شارك More sharing options...
elghoultk قام بنشر فبراير 21, 2022 الكاتب مشاركة قام بنشر فبراير 21, 2022 شكرا جزيلا لمروركم الكريم ولكن ياصديقي @Moosak الشرط يتحقق فقط في عندما يكون هناك ارقام مثل 6 و 7 و 8 و 9 ولكن مع الاعداد الاكبر من 9 مثل 10 او اكثر والتي لاتحتوي علي الارقام سالفت الذكر لا يتحقق الشرط فما العمل رابط هذا التعليق شارك More sharing options...
Moosak قام بنشر فبراير 22, 2022 مشاركة قام بنشر فبراير 22, 2022 6 ساعات مضت, elghoultk said: ولكن مع الاعداد الاكبر من 9 مثل 10 او اكثر والتي لاتحتوي علي الارقام سالفت الذكر لا يتحقق الشرط تم تعديل الكود : Public Sub Check(FiledName As Control) Dim X As Integer Dim Count As Integer Dim TL As Integer Dim L, M As String TL = Len(FiledName) For X = 1 To TL L = Mid(FiledName, X, 1) M = Mid(FiledName, X, 2) If IsNumeric(L) = True Then If L > 5 Then Count = Count + 1 End If End If If IsNumeric(M) = True Then If M > 5 Then Count = Count + 1 End If End If Next X If Count > 0 Then FiledName.FontBold = True FiledName.ForeColor = vbRed Else FiledName.FontBold = False FiledName.ForeColor = vbBlack End If End Sub والآن تتعرف عليها بفضل الله .. المرفق : الرقم 5.accdb 3 رابط هذا التعليق شارك More sharing options...
elghoultk قام بنشر فبراير 23, 2022 الكاتب مشاركة قام بنشر فبراير 23, 2022 الغالي @Moosak كل شئ يعمل بكفاءة بفضل الله ثم بفضل مجهودك الرائع ولكن اذا اردنا اي تصبح ال Backcolor باللون الجراي اذا تحقق الشرط فماذا نضيف للكود؟ رابط هذا التعليق شارك More sharing options...
ابو جودي قام بنشر فبراير 23, 2022 مشاركة قام بنشر فبراير 23, 2022 12 دقائق مضت, elghoultk said: الغالي @Moosak كل شئ يعمل بكفاءة بفضل الله ثم بفضل مجهودك الرائع ولكن اذا اردنا اي تصبح ال Backcolor باللون الجراي اذا تحقق الشرط فماذا نضيف للكود؟ بعد اذن اساتذتى الكرام فى الكود غير السطر FiledName.ForeColor = vbRed الى FiledName.ForeColor = vbGrayText 2 1 رابط هذا التعليق شارك More sharing options...
الردود الموصى بها
من فضلك سجل دخول لتتمكن من التعليق
ستتمكن من اضافه تعليقات بعد التسجيل
سجل دخولك الان