Xlsx样式出错填充模式

时间:2013-11-01 16:38:26

标签: xml excel openxml

我正在编写一个xlsx文件,我想将自己的样式应用于工作表中的单元格。我有一个案例,其中样式1和样式2都指定纯红色,但是当我在excel中打开它时,第一个是灰色点画,但第二个是我期望的。我很难过..以下是附件中的一些xml。

在工作表中,我有2个单元格:

  <x:c t="inlineStr" s="2">
    <x:is>
      <x:t>looks right</x:t>
    </x:is>
  </x:c>
  <x:c t="inlineStr" s="1">
    <x:is>
      <x:t>looks wrong</x:t>
    </x:is>
  </x:c>

在styles.xml文件中,我按如下方式定义这些单元格样式:

<x:cellXfs>
  <x:xf borderId="0" fillId="0" fontId="0" numFmtId="0"/>
  <x:xf fillId="1" applyFill="1"/>
  <x:xf fillId="2" applyFill="1"/>      
</x:cellXfs>

填充的地方是:

<x:fills>
  <x:fill>
    <x:patternFill patternType="none"/>
  </x:fill>
  <x:fill>
    <x:patternFill patternType="solid">
      <x:fgColor rgb="FFFF0000"/>
    </x:patternFill>
  </x:fill>
  <x:fill>
    <x:patternFill patternType="solid">
      <x:fgColor rgb="FFFF0000"/>
    </x:patternFill>
  </x:fill>
</x:fills>

填充1和2都是纯红色,因此单元格样式1和2应该相同,对吧?但他们不是。

这是一个Excel错误吗?编号为1的预定义填充样式是否会覆盖我的定义?

嗯,我不知道如何将文件附加到问题......

1 个答案:

答案 0 :(得分:2)

原来我的第二个猜测是正确的。填充#1硬连线到灰色125。 Excel在读取xml时忽略此填充的定义。如果在某处记录下来会很好。