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

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

قام بنشر (معدل)

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

أريد كتابه سم اللون فى الخلية المقابله للون عند ظهور اللون    

Book1.xlsx

تم تعديل بواسطه waledms
قام بنشر

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

بداية أود أن أوضح لك أنه لا يمكن لأكسل التعرف على اسم اللون كما في طلبك ، ولكن يمكننا التحايل عليه بفكرة إلتفافية حول الموضوع ، حيث أولاً يمكن استخراج رقم ( كود ) اللون ، وبذلك أولاً سنستخدم دالة بسيطة تساعدنا في هذه المهمة كالآتي :-

Function GetColorCode(rng As Range) As Long
    GetColorCode = rng.Interior.Color
End Function

 

الآن بعد أن حصلنا على النتيجة ، سنستخدم دالة تقوم بالتعرف على اللون الناتج من الدالة السابقة ومحاولة تقريبه الى أقرب درجة معروفة سنقوم بإدخال قيمها يدوياً داخل الدالة ، كالآتي :-

Function GetApproximateColorName(rng As Range) As String
    Dim colorCode As Long, R As Integer, G As Integer, B As Integer
    colorCode = rng.Interior.Color
    R = colorCode Mod 256
    G = (colorCode \ 256) Mod 256
    B = (colorCode \ 65536) Mod 256
    If R > 200 And G < 50 And B < 50 Then
        GetApproximateColorName = "أحمر"
    ElseIf R > 200 And G > 200 And B < 100 Then
        GetApproximateColorName = "أصفر"
    ElseIf R > G And R > B Then
        GetApproximateColorName = "أحمر"
    ElseIf G > R And G > B Then
        GetApproximateColorName = "أخضر"
    ElseIf B > R And B > G Then
        GetApproximateColorName = "أزرق"
    ElseIf R = G And G = B Then
        GetApproximateColorName = IIf(R < 128, "غامق", "فاتح") & " رمادي"
    Else
        GetApproximateColorName = "لون مختلط"
    End If
End Function

طبعاً قمت بتغيير الألوان في مثالك إلى الألوان الصريحة لكل لون ( الأخضر ، الأزرق ، الأصفر ، الأحمر ) . وبهذا ، سيتم الاستدعاء في الخلية التي تريد إدراج اسم اللون فيها بهذا الشكل :-

=GetApproximateColorName(K7)

طبعاً فقط ضع هذا الكود في الخلية L7 ثم اسحب تحديد الخلية الى باقي الخلايا لتطبيق الكود عليها جميعاً .

 

وهذا ملفك بعد التعديل :-

 

Book2.xlsm

  • Like 1
  • Thanks 1
قام بنشر (معدل)

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

تحياتي للأستاذ @Foksh الألوان تستخدم في كنترول الابتدائي و ذلك لعدم وجود طابعات ألوان فيتم كنتابة اللون . لذلك هناك حل بسيط بالمعادلات حيث يتم لصق المعادلة التالية في الخلية M7 ثم سحبها للأسفل:

=IFS(I9>=85;"أزرق"; I9>=65;"أخضر"; I9>=50;"أصفر"; TRUE;"أحمر")

 

تم تعديل بواسطه hegazee
  • Like 1
  • Thanks 1
قام بنشر
52 دقائق مضت, hegazee said:

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

تحياتي للأستاذ @Foksh الألوان تستخدم في كنترول الابتدائي و ذلك لعدم وجود طابعات ألوان فيتم كنتابة اللون . لذلك هناك حل بسيط بالمعادلات حيث يتم لصق المعادلة التالية في الخلية M7 ثم سحبها للأسفل:

=IFS(I9>=85;"أزرق"; I9>=65;"أخضر"; I9>=50;"أصفر"; TRUE;"أحمر")

 

كلامك سليم ومنطقي 100% 👍 ، الإعتماد على الدرجات في الخلايا لتحديد اللون فكرة أذكى وأدق ، وأنا فعلاً لم أتوجه الى هذا المنطلق بل حسب طلب الأخ في سؤاله 😅

وحتى يعمل السطر الذي تفضلتم به مع اصدارات اكسل 2010 ، هذا السطر بعد تعديله :-

=IF(I9>=85,"أزرق",IF(I9>=65,"أخضر",IF(I9>=50,"أصفر","أحمر")))

 

  • Like 1
  • Thanks 1
قام بنشر

جزاكم الله خيرا / لو أمكن كتابه نفس الألوان ولكن حسب المستوى كما هو مرفق  

ولكم جزيل الشكر

Book2.xlsm

قام بنشر
5 ساعات مضت, waledms said:

جزاكم الله خيرا / لو أمكن كتابه نفس الألوان ولكن حسب المستوى كما هو مرفق  

ولكم جزيل الشكر

Book2.xlsm 56.42 kB · 1 download

عذراً على المداخلة ، لكني لم افهم الفكرة من تكرار الطلب مرتين 😅

أو ما الفرق بين الطلبين 😁 .

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