تنفيذ شرط محدد إذا تضمنت الخلية على كلمة محددة

مجهول
2024-08-12T12:52:58+00:00

اعمل على ملف اكسل لحساب الكميات، و واجهتني مشكلتان مرتبطتان ببعضهما البعض:

المشكلة الأولى:

في العمود C يتم كتابة الوحدة (م او م² او م³) تلقائيا بواسطة الصيغة الموضحة في الصورة ادناه.

المشكلة: في الخلية C8 الخاص بوحدة إجمالي القيم السابقة لم يتم كتابة اي شي و أريد أن تظهر نفس قيمة الخلية C7.

{في الخلية C14 قمت بكتابة الوحدة يدويا}.

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

─────────────────────────────────

المشكلة الثانية:

العمود H خاص بظهور الناتج وفقا للصيغة التالية:

if(product(D3:G3)=0," ",product(D3:G3))

المشكلة: في الخلية H8 يظهر مجموع القيم السابقة وفقا للصيغة الموضحة في الصورة ادناه و التي قمت بكتابتها بعد حذف الصيغة (if,product).

اريد كتابة صيغة تجمع بين الصيغتين (if,product) و (sum) لتقوم بحساب مجموع القيم السابقة عندما يتضمن العمود B كلمة (إجمالي) و بخلاف ذلك يقوم بعملية الضرب المعتادة.

حتى إذا كان لابد من استخدام VBA لحل هذه الامشكلة فلا بأس بذلك

Microsoft 365 وOffice | Excel | غير ذلك | Windows

سؤال مؤمّن. تم ترحيل هذا السؤال من مجتمع دعم Microsoft. يمكنك التصويت على إذا ما كان مفيدًا أم لا، ولكن لا يمكنك إضافة تعليقات أو ردود أو متابعة السؤال.

0 تعليقات ليست هناك تعليقات
الإجابة مقبولة بواسطة كاتب السؤال
مجهول
2024-08-13T05:56:05+00:00

تمت ترجمة هذه الاستجابة تلقائيا. ونتيجة لذلك، قد تكون هناك أخطاء نحوية أو صيغ غريبة.

مرحبا,أحمد فتح الرحمن

شكرا لك على استخدام منتجات Microsoft ونشرها في المجتمع.

يمكنك استخدام الدالة SEARCH لكل من سؤاليك الأول والثاني ، مثل سؤالك الأول بالصيغة التالية:

=IF(ISNUMBER(SEARCH("Total", B8)), C7, IF(AND(D8<>"",COUNT(E8:G8)=0),"عدد",IF(COUNT(E8:G8)=3,"م³",IF(COUNT(E8:G8)=2,"م²",IF(COUNT(E8:G8)=1,"م","")))))

إذا كانت الخلية B8 تحتوي على ملخص، فستعرض الخلية C8 محتويات C7.

المشكلة الثانية هي نفسها.

آمل أن تساعدك المعلومات الواردة أعلاه. لا تتردد في إرسال رسالة إذا كنت بحاجة إلى مزيد من المساعدة.

أطيب الأمنيات

ايدن سي - MSFT |أخصائي دعم مجتمع مايكروسوفت

هل كانت هذه الإجابة مفيدة؟

شخص واحد وجد هذه الإجابة مفيدة.
0 تعليقات ليست هناك تعليقات

6 من الإجابات الإضافية

فرز حسب: الأحدث
  1. مجهول
    2024-08-17T04:43:04+00:00

    شكرا على مساعدتك و صبرك معي.

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

    هل كانت هذه الإجابة مفيدة؟

    0 تعليقات ليست هناك تعليقات
  2. مجهول
    2024-08-15T02:14:22+00:00

    مرحبا مجددا

    كيف ادمج هذهذ الصيغة:

    (OFFSET(H14,-MATCH(TRUE,ISBLANK(H1:H14),0),0,MATCH(TRUE,ISBLANK(H1:H14),0))=
    

    مع الصيغة الموضح في الصورة اعلاه و هي:

    =IF(AND(COUNT(D14:G14)=0,ISNUMBER(SEARCH("total",B14))),SUM(H10:H13),IF(PRODUCT(D14:G14)=0," ",PRODUCT(D14:G14)))=
    

    هل كانت هذه الإجابة مفيدة؟

    0 تعليقات ليست هناك تعليقات
  3. مجهول
    2024-08-14T12:55:08+00:00

    تمت ترجمة هذه الاستجابة تلقائيا. ونتيجة لذلك، قد تكون هناك أخطاء نحوية أو صيغ غريبة.

    مرحبا,  أحمد فتح الرحمن

    يمكنك استخدام الدالة MATCH( ، على سبيل المثال:

    MATCH(TRUE,ISBLANK(H1:H14),0)
    

    يشير هذا إلى موقع الخلية الفارغة الأولى لأعلى من الخلية الحالية

    ثم استخدم الدالة OFFSET ، على سبيل المثال:

    (OFFSET(H14,-MATCH(TRUE,ISBLANK(H1:H14),0),0,MATCH(TRUE,ISBLANK(H1:H14),0))
    

    وظيفة OFFSET لتحديد نطاق الخلايا الفارغة للخلية الحالية ثم تلخيصها

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

    أطيب الأمنيات

    ايدن سي - MSFT |أخصائي دعم مجتمع مايكروسوفت

    هل كانت هذه الإجابة مفيدة؟

    0 تعليقات ليست هناك تعليقات
  4. مجهول
    2024-08-14T06:23:50+00:00

    أما بخصوص المشكلة الثانية وجدت لها نصف حل (حل به مشكلة اخرى)

    حاولت كتابة الصيغة التالية في الخلية H14:

    صورة

    شرح الصيغة:

    يتأكد الإكسل من وجود شرطين و هما ان الخلايا في النطاق D14:G14 خالية من اي قيم و أن الخلية B14 تحتوي على كلمة إجمالي، إذا تحقق الشرطان يتم جمع قيم الخلايا H10:H13، إذا لم يتحقق الشرطان معا يتم إجراء عملية الضرب.

    لكن المشكلة هي في نطاق الجمع SUM(H10:H13) المكتوب في الصيغة في الصورة اعلاه و المشكلة هي أن هذا النطاق لا يجب يكون ثابت لأنه احيانا احتاج لجمع نطاق يتكون من 5 خلايا او 7 حلايا او 3 خلايا او اكثر او اقل (النطاق غير ثابت كما في الصورة التالية)

    صورة
    هذه الصيغة تعمل جيدا عند وجود صف واحد فقط مثل الخلية H23 ناتجها صحيح لأن الشرط الأول (count = 0) لم يتحقق فيتم إجراء عملية الضرب.

    تلميح لحل المشكلة:

    يمكن ملاحظة أن النطاق المراد جمعه يوجد في اعلاه خلية فارغة.

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

    هل كانت هذه الإجابة مفيدة؟

    0 تعليقات ليست هناك تعليقات