2017-02-23 11 views
0

私は次のコードClosedXMLライブラリとのExcelの既存のファイル(のxlsx)にタイトル行を追加しようとしていますとファイルダイアログボックスが開き、XLWorkbookと表示されます。エラー修正エクセル(のxlsx)を節約しながらClosedXML

私は_workbook.SaveAs方法から、この例外メッセージを受信して​​います:

属性 'xfIdのユニークな値を持つ必要があります。
現在の値 '10' は他と重複しています。 xs:styleSheet [1]/x:cellStyles [1]/x:cellStyle [21]
属性 'xfId' は一意の値を持つ必要があります。
現在の値 '12'は 個のものと重複しています。 in/x:styleSheet [1]/x:cellStyles [1]/x:cellStyle [24]
属性 'xfId' は一意の値を持つ必要があります。
その現在の値 '50'は その他と重複しています。 in/x:styleSheet [1]/x:cellStyles [1]/x:cellStyle [55
属性 'xfId' は一意の値を持つ必要があります。
その現在の値 '50'は その他と重複しています。 ClosedXML.Excel.XLWorkbook.Validate(SpreadsheetDocument パッケージ)で

:スタイルシート[1]/X:cellStyles [1]/X:cellStyle [59]」

のStackTrace/Xで Cで:\ Gitは\ ClosedXML \ ClosedXML \エクセル\ XLWorkbook_Save.cs:ライン90

ClosedXML.Excel.XLWorkbook.CreatePackage(文字列filePathに、 SpreadsheetDocumentType spreadsheetDocumentType、Bで...

私はこの問題をどのように進めるべきか分かりませんが、すべてのヒントは非常に高く評価されるでしょう! Excelファイルは以前にTelerik.Windows.Documents.Spreadsheet.Model.Workbookクラスによって作成されており、Excelアプリケーションでは通常開くことができます。

答えて

3

オリジナルのファイル(ClosedXMLで変更されていない)をOpenXML SDK Validatorで開き、有効なファイルであるかどうかを確認します。検証エラーが元のファイルで発生した場合は、修正してください。または、SaveAs(_filePath, false)オーバーロードを使用して自己責任でClosedXMLで検証を無効にすることができます。

+0

例外に記載されているエラーについての考え方とその修正方法を教えてください。エラーノードの種類はCellStyleです。バリデータは、上記の例外と同じエラーをリストします。 – ajr

関連する問題