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

كيف أحل مشكلة محدودية الدالة IF


triste

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

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

كل عام و أنتم بخير بمناسبة شهر رمضان المبارك أعاده الله عليكم و على أمتنا الإسلامية بكل الخير

لو فرضنا أن لدى البيانات التالية :

1 الزمالك 1 القاهرة

2 الشرق 2 بورسعيد

2 المناخ 3 الإسماعيلية

3 الشيخ زايد 4 السويس

4 الأربعين 5 المنصورة

3 الكاريه

1 الدقى

5 توريل

5 السكة الجديدة

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

و بفرض أنه ستوجد قيم رقمية مناظرة لأسماء المناطق الفرعية ..

فالمطلوب : هو كيف يمكن عمل دالة إكسيل تقوم بالتعرف على المدينة التى تتبعها المنطقة الفرعية و من ثم تقوم يتجميع كل القيم المناظرة للمناطق الفرعية التابعة لنفس المدينة و تضع الناتج فى عمود جديد بجانب إسم المدينة .... و هكذا

و ذلك لأننى حاولت بإستخدام الدالة (IF) فوجدت أن هناك حد أقصى 8 متغيرات لما يمكن إدخاله على صورة (إذا كان إسم المنطقة الفرعية (كذا) إذن (الرقم) كذا ; و إلا إذا كان إسمها كذا ; إذن القم كذا)

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

فهل أجد لدى خبراء المنتدى حلاً لتلك المشكلة ..

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

السلام عليكم،

في هذه الحالة يفضل استخدام الدالة VLOOKUP .. ويمكنك أيضاً استخدام IF أيضاً.. وإذا استعصى عليك الأمر .. أرفق لنا الملف وإن شاء الله نقدر نساعدك.

شكراً،

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

أخى الكريم : love candle

مرفق لكم ملف به عرض المشكلة التى لم أستطع حلها ، حيث ما أريده الآن هو ملء الجدول الأخير ، بحسب الحى و نوع النشاط معاً.

و كنت قد استطعت عمل قوائم منسدلة و بإستخدام الدالة index أن أقوم بملء الجدول الصغير عن طريق إرجاع المناطق الفرعية إلى الأحياء التى تتبعها ، و لكنى لم أستطع أن أقوم بعمل معادلة sumif و أدرج بها شرطين معاً أحدهما خاص بوجود حى معين و الآخر بوجود نشاط معين معاً .

الملف المرفق

و لك جزيل الشكر و التقدير

بارك الله فيك

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

أخى الكريم : love candle

إليك آخر وضع توصلت إليه ، و قد أصابنى إرهاق ذهنى شديد بمعنى الكلمة حيث قمت بمراجعة دقيقة لكل ما يمكن أن يكون به خطأ و لم أصل لأى شئ !!!!!!!!!!!!!!!!! ، أتمنى أن أجد ليد الحل و المخرج من هذه المشكلة أخى الكريم لأننى أحتاج لهذا الملف ضمن منظومة خاصة بعملى فى وقت قريب لأننى سأقدم تقرير لرئيسى فى العمل بخصوصه ..

بارك الله فيك أى الكريم و شكراً لك.

الملف المرفق

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

السلام عليكم،

أخي الكريم .. كانت المشكلة لديك هي أنك أردت أن تجمع نطاق معين عند تحقق شرطين في نطاقين آخرين .. وفي هذه الحالة الدالة SUMIF لاتفي بالغرض حتى لو استخدامتها مع الدالة IF كالذي قمت أنت بعمله .. والنتجية ستخرج لك Circular Reference وهذا بالضبط ماحدث معك ..

لذا توجب علينا استخدام دالة آخرى تقوم بجمع نطاق معين عند تحقق شرطين في نطاقين آخرين .. وهذه الوظيفة لا تقوم بها سوى الدالة SUMPRODUCT .. وقد قمت مسبقاً بطرح موضوع بهذا الخصوص وهو موجود على الرابط التالي:

http://www.officena.net/ib/index.php?showt...ute;+sumproduct

والآن يمكنك أن تشاهد المرفق وترى كيف أننا استطعنا التوصل لما نريد عن طريق استخدام الدالة SUMPRODUCT.

____________________________________2_.zip

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

و الله أى كلمة شكر ستكون قليلة فى حقك أخى / love candle ، فقد فرجت عنى كربة من كرب الدنيا و يسرت لى أمراً و قضيت لى حاجة من حوائج الدنيا ، بارك الله فيك و فرج عنك كربة من كرب يوم القيامة و يسر لك كل أمورك . برحمته و فضله و رضوانه .
رابط هذا التعليق
شارك

العفو يا أخ triste .. فهذا أقل ما يقدمه المسلم لأخيه المسلم.

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

  • 1 month later...
زائر
هذا الموضوع مغلق.
  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

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

Important Information