合并单元格上的 OpenXML SDK 边框仅应用于第一个单元格

OpenXML SDK border on merged cells only applied to first cell

使用 OpenXML SDK 将边框应用于合并的单元格范围时,边框仅显示在合并范围中的第一个(左上角)单元格中。我完全不知道,这让我发疯。使用生产力工具,我找不到我所拥有的东西和按预期工作的东西有任何有意义的区别。这是我为样式表生成的 XML:

    <x:borders count="2" xmlns:x="http://schemas.openxmlformats.org/spreadsheetml/2006/main">
      <x:border>
        <x:left />
        <x:right />
        <x:top />
        <x:bottom />
        <x:diagonal />
      </x:border>
      <x:border>
        <x:left />
        <x:right />
        <x:top />
        <x:bottom style="thick">
          <x:color auto="1" />
        </x:bottom>
        <x:diagonal />
      </x:border>
    </x:borders>
    <x:cellXfs xmlns:x="http://schemas.openxmlformats.org/spreadsheetml/2006/main">
      <x:xf fontId="0" />
      <x:xf fontId="1" fillId="2" applyFont="1" applyFill="1" />
      <x:xf borderId="1" applyBorder="1" />
    </x:cellXfs>

我已经尝试了所有方法,在边框之前、之后等应用合并

我已经弄明白了。我的印象是,如果您将样式应用于一组合并单元格中左上角的单元格,那么该样式将应用于整个合并。我发誓我读过一些这样说的文件,但事实显然并非如此。有效的是我将边框样式应用于合并范围内的每个单元格,而不仅仅是第一个。

考虑到除了通过 OpenXML SDK 之外无法重现生成的输出,我最初使用它的方式在我看来似乎很奇怪。