صيغ الصفيف في التنسيق الشرطي لملفات جداول بيانات Excel XML؟

StackOverflow https://stackoverflow.com/questions/84978

سؤال

يتعامل برنامج Excel عادةً مع صيغ التنسيق الشرطي كما لو كانت صيغ صفيف، يستثني عند تحميلها من ملف جدول بيانات Excel 2002/2003 XML.

هذه مشكلة فقط في تنسيق جدول بيانات Excel 2002/2003 XML...يعمل تنسيق Excel الأصلي بشكل جيد، وكذلك تنسيق Excel 2007 XML الأحدث (xlsx).

بعد تحميل جدول البيانات، من الممكن جعله يعمل بشكل صحيح عن طريق تحديد النطاق المنسق، والانتقال إلى مربع الحوار "التنسيق الشرطي"، والنقر فوق "موافق" - ولكن هذا لا يؤدي إلا إلى إصلاح مشكلة الجلسة.

حالة اختبار:

أدخل ما يلي في ورقة جديدة:

  A B C
1 N N N
2 x x x
3 x x x

قم بإنشاء صيغة التنسيق الشرطي هذه على الخلايا A1:C1 (اختيارك للألوان الجميلة للتنسيق):

=(SUM(($A1:$C1="N")*($A$2:$C$2=A$3))>0)

هذه صيغة صفيف يتم تنشيطها لـ A1 وB1 وC1 عندما يحتوي أي منها على "N" والخلية الموجودة في الصف 2 أسفل "N" تساوي الخلية الموجودة في الصف 3 من العمود الحالي.

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

ويعمل...يمكنك تغيير حرف N أو x بأي طريقة تريدها وسيعمل التنسيق بشكل جيد.

احفظ هذا كجدول بيانات XML.أغلق برنامج Excel، ثم أعد فتح الملف.التنسيق معطل الآن.الآن، يمكنك فقط تنشيط التنسيق الشرطي إذا كانت A1 هي "N" وA2 هي نفسها A3 أو B3 أو C3.ليس لقيم B1 وB2 وC1 وC2 أي تأثير على التنسيق.

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

الحلول التي تم النظر فيها:

  1. توفير الملف بتنسيق Excel الأصلي (BIFF).ليس خيارًا، حيث يتم إنشاء جداول البيانات هذه بسرعة بواسطة خادم ويب، وهذا مجرد واحد من عشرات أنواع المصنفات التي يتم إنشاؤها ديناميكيًا بواسطة نظامنا.

  2. توفير الملف بتنسيق XML الأصلي لبرنامج Excel 2007 (xlsx).ليس خيارًا، فقاعدة المستخدمين الحالية لا تحتوي على Office 2007 أو المكون الإضافي المتوافق.

  3. مطالبة المستخدمين بتحديد النطاق، والدخول إلى مربع حوار التنسيق الشرطي، والضغط على "موافق".ليس خيارا في هذه الحالة، للمستخدمين غير المتطورة.

  4. مطالبة المستخدمين بفتح جدول بيانات XML وحفظه بتنسيق XLS الأصلي وإغلاق ملف XLS وإعادة فتحه. هذا لا يعمل! يظل التنسيق معطلاً في تنسيق XLS الأصلي إذا تم تحميله معطلاً من ملف XML.إذا تم تنفيذ (3) أعلاه قبل الحفظ، فسيعمل ملف XLS بشكل صحيح.

انتهى بي الأمر بإعادة كتابة التنسيق الشرطي لعدم استخدام صيغ الصفيف.لذلك أعتقد أن هذا قد تم "الإجابة عليه" إلى حد ما، لكنه لا يزال خطأ غير موثق، وإن كان غامضًا، في معالجة Excel 2002/2003 لملفات XML.

هل كانت مفيدة؟

المحلول

حاولت إعادة إنشاء المشكلة التي تصفها.وهنا ما وجدته.

  • يمكن إعادة إنشاء المشكلة باستمرار باستخدام Excel 2003 على Windows XP عند حفظ جدول بيانات XML.

  • استطاع لا قم بإعادة إنتاج المشكلة باستخدام Excel 2003 على Windows XP عند حفظ جدول بيانات XLS قياسي.

  • استطاع لا قم بإعادة إنتاج المشكلة باستخدام Excel 2007 على Windows Vista عند حفظ الملف بتنسيق XLSX الأصلي.

  • استطاع لا قم بإعادة إنتاج المشكلة باستخدام Excel 2007 على Windows Vista عند حفظ الملف بتنسيق Excel 97-2003 XLS.

    (ملحوظة: كافة مثيلات Excel وWindows محدثة مع كافة تحديثات Windows.)

أضفت أيضًا صيغة تنسيق شرطي بسيطة لكل اختبار.وفي كل حالة، كان الأمر يعمل كما هو متوقع بعد حفظ الملف وإغلاق برنامج Excel وإعادة فتح الملف.

لذا يبدو أن الإجابة هي استخدام تنسيق ملف Excel 2003 القياسي عند حفظ الملف.

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

نصائح أخرى

يمكنك العثور على بعض مقاطع الفيديو التعليمية للدراسة الذاتية لمسألة التنسيق الشرطي عبر الصفحات التالية:تنسيق مشروط

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top