سؤال

في XML من ورقة العمل في علامات خلايا ملف XLSX (Excel 2007) التي تحتوي على سمة "T" تساوي "S" أنواع السلسلة. يجب البحث عن علامة القيمة داخل C وتحويلها عبر وثيقة SquareStrings. ولكن ، بعض الخلايا لديها s = "237" ولا توجد سمة على الإطلاق. تحتوي علامة القيمة على عدد صحيح مثل 39448 لا يرتبط بمستند المشاركين. القيمة كما تظهر في Excel هي تاريخ 1/1/2008.

ماذا تشير سمة S في علامة AC في XLSX؟

قيمة غير معروفة

<c r="B47" s="237">
    <v>39448</v>
</c>

قيمة السلسلة المشتركة

<c r="C47" t="s">
    <v>7</v>
</c>
هل كانت مفيدة؟

المحلول

تشير سمة S إلى نمط. "237" هو نمط محدد في ملف STYLES.XML.

<v>39448</v>

... على الأرجح تاريخ في شكل مزدوج. ويطلب النمط 237 Excel لعرضه 39448 في تنسيق التاريخ.

يمكنك رؤية مثال على كيفية عمل هذا هنا: http://blogs.msdn.com/b/brian_jones/archive/2007/05/29/simple-spreadsheetml-file-bart-3-formatting.aspx

نصائح أخرى

تشير سمة S التي تساوي 237 ، تشير إلى العنصر 237 الموجود في العنصر الأصل في ملف STYLES.XML الموجود في ملف XLSX.

إذا كانت قيمة الخلية تاريخًا ، فقد يكون العنصر مشابهًا للرمز التالي

<xf numFmtId="167" 
    fontId="6" 
    fillId="0" 
    borderId="6" 
    xfId="3" 
    applyNumberFormat="1" 
    applyFont="1" 
    applyFill="1" 
    applyBorder="1" 
    applyAlignment="1">
        <alignment horizontal="center"/>
</xf>

في هذه المرحلة ، لا نرى أن هذه الخلية تمثل نوع التاريخ. لفهم ذلك ، يجب أن نجدu003CnumFmtId> مع "167" كمفتاح.

يمكن العثور على هذه القيمة في ملف styles.xml

<numFmts count="7">
    <numFmt numFmtId="164" formatCode="[$-409]d\-mmm\-yy;@"/>
    <numFmt numFmtId="165" formatCode="0.000"/>
    <numFmt numFmtId="166" formatCode="0.0"/>
    <numFmt numFmtId="167" formatCode="[$-409]d\-mmm\-yyyy;@"/>
    <numFmt numFmtId="168" formatCode="0.0%"/>
    <numFmt numFmtId="169" formatCode="00000"/>
    <numFmt numFmtId="170" formatCode="0.0000"/>
</numFmts>

يشير السطر مع numFMTID = "167" إلى أن قيمة الخلية هي تاريخ تنسيق باستخدام السلسلة التالية [$ -409] d-mmm-yyyy ؛@"

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

  1. ابحث عن سمة S (= النمط)u003Cc> عنصر
  2. ابحث عن السمة numfmtid منu003Cxf> عنصر في ملف STYLES.XML في ملف XLSX.
  3. ابحث عن سمة تنسيق الرمزu003CnumFmt> الذي يحتوي على numfmtid كمفتاح
  4. معرفة ما إذا كان التنسيق هو تنسيق تاريخ أو تنسيق رقم

آمل أن يساعد ذلك الآخرين.

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