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

مطلوب كود تنسيق شرطى لأعمدة كل عمود بشرط غير الآخر


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

المطلوب

فى السطر رقم 10 مجموعة قيم مختلفة فى عدة أعمدة

المطلوب أن يتم تظليل الخلايا بالأعمدة فى مدى معين وليكن من السطر الـ 11 إلى السطر 2000 فى الأعمدة رقم 7 و 9 و 11 و 13 و 14 و 16 و 19 و 22 مثلاً بلون برتقالى إذا كانت قيمة الخلية اقل من قيمة الخلية التى فى السطر 10 فى نفس العمود كذلك يتم التظليل فى حالة وضع حرف غ فى الخلايا داخل النطاق

على أن يكون الكود بدون زر أى يعمل أوتوماتيك بمجرد وضع القيمة فى الخلية مثل التنسيق الشرطى على أساس أن تكون جميع الخلايا فى النطاق مظللة باللون البرتقالى على إعتبار أنها خالية فتكون قيمتها أقل من القيمة التى فى نفس العمود فى السطر 10 فإذا وضعت فى الخلية قيمة أكبر من أو تساوى القيمة فى السطر 10 بنفس العمود يختفى التظليل

ولو يصعب تحديد نفس اللون لتنسيق الشرطين ( غ ) و الأرقام الأقل فلنجعل التظليل البرتقالى للخلايا بالأرقام واللون الأحمر لحرف غ

أتعشم أن يكون الطلب واضحاً

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

بعد إذن أساتذتي الأفاضل ( الشهابي ) و( أبو حنين )

أستاذي ومعلمي ( يوسف ) أتمني من كل قلبي أن يكون المطلوب

تنسيق شرطى لأعمدة.rar

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

أستاذي ومعلمي (يوسف ) أعتقد ممكن يكون هذا أكثر إفادة وأكثر تكاملا من المرفق السابق لأنه ينسق رأس العمود الذي يحتوي علي الشرط مع تنسيق العمود

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

أستاذي ومعلمي (يوسف ) أعتقد ممكن يكون هذا أكثر إفادة وأكثر تكاملا من المرفق السابق لأنه ينسق رأس العمود الذي يحتوي علي الشرط مع تنسيق العمود

تنسيق شرطى لأعمدة مع تنسيق رؤووس الأعمدة.rar

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

الأستاذ / أبو حنين

والأستاذ عبد الله المجرب والأستاذ محمود وكذلك الأستاذ يوسف

أنتم الذين دائما رائعون

بارك الله فيكم جميعا

تقبلوا شكري وتحياتي

تلميذكم الشهابي

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

أخي وصديقي العزيز ( الشهابي ) لفظ أستاذ منك لاينطبق علي فنحن علي درب العلم نحبو ولقد تعلمت الكثير منك

فأعمالك تنم علي عقلية متفتحة وذكية تتطوع المعلومة لخدمة زملائة في جد وأجتهاد بارك الله فيك وأدام المعروف والمحبة بيننا أمين

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

اللهم بارك فيكم إخوانى وأساتذتى الأجلاء

جارى إستكشاف الدرر التى تفضلتم بإرسالها وإن كنت أحب أن يكون العمل بالكود نظراً لأن حجم الملف قارب على الـ 30 ميجا والتنسيقات الشرطية ستضاعف من حجمه

الف شكر مقدماً وجارى المتابعة

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

أستاذنا القدير / يوسف عطا

لو تريدها من خلال التنسيق الشرطي بدون أكواد

إليك هذا الملف

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

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

بعد إذن أساتذتي الأفاضل ( الشهابي ) و( أبو حنين )

أستاذي ومعلمي ( يوسف ) أتمني من كل قلبي أن يكون المطلوب

معادلاتك دائماً تبهرنى يا محمود بك

ربنا يزيدك من العلم ويجعلك عوناً لكل محتاج

تمنياتى لك بالتوفيق دائماً

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

الاخوة الكرام

الشهابي

ابوحنين

محمود

بارك الله فيكم على هذا العطاء الكريم

نورت الموضوع أخى عبدالله

وأنت دائماً صاحب واجب

وكنت أتوقع أن تثرى الموضوع بكود آخر يحقق المطلوب

من باب تعدد طرق الحل

أتمنى أن أراك دائماً تنير المنتدى بمشاركاتك الجميلة

وأرجو أن تكون أحوالك تمام التمام وأن يكون سبب إقلالك بالمشاركات حالياً مجرد مشغوليات العمل وليس شئ آخر

طمنا عليك بإستمرار يا غالى

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

أستاذي ومعلمي (يوسف ) أعتقد ممكن يكون هذا أكثر إفادة وأكثر تكاملا من المرفق السابق لأنه ينسق رأس العمود الذي يحتوي علي الشرط مع تنسيق العمود

بالفعل محمود بك

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

اسأل الله لك التوفيق الدائم

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

جرب اخي يوسف المرفق

أخونا الغالى أبو حنين

بالفعل أحتاج أن يكون العمل عن طريق الكود

ولكن

الكود الذى أرفقته حضرتك لى فيه ملاحظتين

1. أنه لم يشر إطلاقاً لحالة وضع حرف غ فى الخلية

2. أنه يظلل القيم الأعلى من قيم السطر 10 والمطلوب العكس أى يظلل القيم الأقل من قيمة الخلية فى السطر 10

موضوع الأكبر والأقل أعتقد يتم تظبيطه عن طريق قلب علامة أكبر من إلى علامة أصغر من فى السطر التاسع من الكود هل هذا صحيح أم لا ؟

ولكن موضوع حرف الـ غ مش عارف أعمله برجاء تظبيط الكود ليتم تظليل حرف الـ غ بلون مختلف عن الأرقام المظللة أو حتى بنفس اللون مش قضية

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

أستاذي ومعلمي العظيم ( يوسف ) دائما تغمرني بمدح لاأستحقة لأن هذا كله نتاج تعليمكم وأن يقدم التلميذ عمل لأستاذة فهذا علي سبيل الأمتحان وإن يثني عليه أستاذة فهذه شهادة نجاحة وكرم وتواضع من أستاذه بارك الله فيك أستاذي وجعل ثناءك هذا في ميزان حسناتك

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

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

كما ذكر اخي الاستاذ أبو حنين بان الكود سيكون بطئ اذا تم التطبيق على كامل النطاق المطلوب , لذا الكود التالي يعمل فقط على الخلايا المتغيرة في النطاق المطلوب


Private Sub Worksheet_Change(ByVal Target As Range)

Dim Rn As Range, cl As Range

Set Rn = Intersect(Target, Range("G11:G2000,I11:I2000,K11:K2000,M11:M2000,N11:N2000,P11:P2000,S11:S2000,V11:V2000"))

If Not Rn Is Nothing Then

Rn.Interior.ColorIndex = xlNone

For Each cl In Rn

If cl = "غ" Or cl < Cells(10, cl.Column) Then cl.Interior.ColorIndex = 44

Next

End If

Set Rn = Nothing

End Sub

ارجوا ان يكون المطلوب

في أمان الله

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

وهنا كود يعمل على كامل النطاق


Private Sub Worksheet_Change(ByVal Target As Range)

Dim Rn As Range, cl As Range

Set Rn = Range("G11:G2000,I11:I2000,K11:K2000,M11:M2000,N11:N2000,P11:P2000,S11:S2000,V11:V2000")

If Not Intersect(Target, Rn) Is Nothing Then

Application.ScreenUpdating = False: Application.EnableEvents = False

Rn.Interior.ColorIndex = xlNone

For Each cl In Rn

If cl <> "" And (cl = "غ" Or cl < Cells(10, cl.Column)) Then

If cl.Interior.ColorIndex <> 44 Then cl.Interior.ColorIndex = 44

End If

Next

Application.EnableEvents = True: Application.ScreenUpdating = True

End If

Set Rn = Nothing

End Sub

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

أخى الخالدى

أشكرك

كلا الكودين الذين تفضلت بكتابتهما يعملان جيداً

ولى عندك طلبين لو لا أضايقك بهما

1. شرح الفرق بينهما

2. ما الذى يجب تغييره فيهما لكى يكون لحرف غ لون آخر ؟؟

وشكراً لكرمك

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

عذار اخي يوسف لتأخري بالرد عليك وذلك بسبب ظروف عملي

لم توضح الفرق من اي ناحية

فالكود الاول سريع ويقوم فقط بتلوين الخلايا التي تم فيها التغير في النطاق المحدد(الاعمدة المحددة) ويعاب عليه انه لن يقوم بتلوين الخلايا التي تحقق الشرط قبل وضع الكود في حدث الورقة.

الكود الثاني بطئ ويقوم بتلوين كل الخلايا في النطاق التي حدث فيها تغير ام لم يحدث فيها تغير (اي اعادة تحديث الوان كل خلايا النطاق)

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

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

الاكود بعد التعديل لكى يكون لحرف غ لون آخر

الكود الاول


Private Sub Worksheet_Change(ByVal Target As Range)

Dim Rn As Range, cl As Range

Set Rn = Intersect(Target, Range("G11:G2000,I11:I2000,K11:K2000,M11:M2000,N11:N2000,P11:P2000,S11:S2000,V11:V2000"))

If Not Rn Is Nothing Then

Rn.Interior.ColorIndex = xlNone

For Each cl In Rn

If cl = "غ" Then

cl.Interior.ColorIndex = 42

Else

If cl < Cells(10, cl.Column) Then cl.Interior.ColorIndex = 44

End If

Next

End If

Set Rn = Nothing

End Sub

الكود الثاني

Private Sub Worksheet_Change(ByVal Target As Range)

Dim Rn As Range, cl As Range

Set Rn = Range("G11:G2000,I11:I2000,K11:K2000,M11:M2000,N11:N2000,P11:P2000,S11:S2000,V11:V2000")

If Not Intersect(Target, Rn) Is Nothing Then

Application.ScreenUpdating = False: Application.EnableEvents = False

For Each cl In Rn

If cl = "غ" Then

If cl.Interior.ColorIndex <> 42 Then cl.Interior.ColorIndex = 42

Else

If cl <> "" And cl < Cells(10, cl.Column) Then

If cl.Interior.ColorIndex <> 44 Then cl.Interior.ColorIndex = 44

Else

If cl.Interior.ColorIndex <> xlNone Then cl.Interior.ColorIndex = xlNone

End If

End If

Next

Application.EnableEvents = True: Application.ScreenUpdating = True

End If

Set Rn = Nothing

End Sub

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

من فضلك سجل دخول لتتمكن من التعليق

ستتمكن من اضافه تعليقات بعد التسجيل



سجل دخولك الان
  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information