大きなエクセルファイルを生成していますが、データの見出しを太字にしています。Excel Styles.xmlの外観 - OpenXML
CellFormat
コードをすべてコメントアウトしてスプレッドシートを作成するとファイルが正しく作成されますが、コメントアウトしないとエラーが表示されます。Repaired Records: Format from /xl/styles.xml
(もちろん、私は、最初のファイルを修復するYes
をクリック)
これは私のコードは次のようになります。
Public Function Create_Spreadsheet_Stylesheet(ByRef stylePart As WorkbookStylesPart) As WorkbookStylesPart
Dim font1Id As UInt32Value,
font2Id As UInt32Value
Dim font1 As New Font With {
.FontName = New FontName With {.Val = "arial"},
.FontSize = New FontSize With {.Val = 9}
}
Dim font2 As New Font With {
.Bold = New Bold,
.FontName = New FontName With {.Val = "arial"},
.FontSize = New FontSize With {.Val = 9}
}
stylePart.Stylesheet = New Stylesheet
stylePart.Stylesheet.Fonts = New Fonts
stylePart.Stylesheet.Fonts.Append(font1)
font1Id = Convert.ToUInt32(stylePart.Stylesheet.Fonts.ChildElements.Count - 1)
stylePart.Stylesheet.Fonts.Append(font2)
font2Id = Convert.ToUInt32(stylePart.Stylesheet.Fonts.ChildElements.Count - 1)
stylePart.Stylesheet.Save()
Dim cf1 As New CellFormat() With {
.FontId = font1Id,
.FillId = 0,
.BorderId = 0
}
Dim cf2 As New CellFormat() With {
.FontId = font2Id,
.FillId = 0,
.BorderId = 0
}
stylePart.Stylesheet.CellFormats = New CellFormats ' I would comment this line out
stylePart.Stylesheet.CellFormats.Append(cf1) ' And this one
stylePart.Stylesheet.CellFormats.Append(cf2) ' And this one
stylePart.Stylesheet.Save()
Return stylePart
End Function
styles.xml
は次のようになります。私はと間違っ
<?xml version="1.0" encoding="UTF-8"?>
<x:styleSheet xmlns:x="http://schemas.openxmlformats.org/spreadsheetml/2006/main">
<x:fonts>
<x:font>
<x:sz val="9" />
<x:name val="arial" />
</x:font>
<x:font>
<x:b />
<x:sz val="9" />
<x:name val="arial" />
</x:font>
</x:fonts>
<x:cellXfs>
<x:xf fontId="0" fillId="0" borderId="0" />
<x:xf fontId="1" fillId="0" borderId="0" />
</x:cellXfs>
</x:styleSheet>
何をしていますコード、またはcellFormatを使用するためには何を変更する必要がありますか。
私はどのように大胆なセルと、私はここにこのチュートリアルを次されている上、インターネット上の多くの例を見てきました:私はここでの問題は、それがあなたのセル内にあると思い