※本ページはプロモーションが含まれています

C# 自分の時間を作るプログラミング技術

【C#】ClosedXMLをインストールする時に『'SixLabors.Fonts' を解決できません。使用されているソース: 'nuget.org', 'Microsoft Visual Studio Offline Packages'』のエラーが出てしまう時の対処法

  • 『'SixLabors.Fonts' を解決できません。』って言うエラーが出た時の対処法を知りたい
  • ClosedXMLで保存したExcelファイルがめちゃくちゃになって保存される時の対処法を知りたい

 

ClosedXMLがバージョンアップしてからと言う物、「インストール出来ない」とか「挙動がおかしい!」なんて現象が起こっているようです。

Excel操作が出来る便利な機能なだけに困りますよね。

 

そこで今回は、実際に自分がClosedXMLを使ってる時に起こって困ったエラーの直し方について紹介していきます。

 

『'SixLabors.Fonts' を解決できません。』って言うエラーが出た時の対処法

NuGetパッケージでClosedXMLをインストールしようとすると『'SixLabors.Fonts' を解決できません。使用されているソース: 'nuget.org', 'Microsoft Visual Studio Offline Packages'』って言うエラーが出てダウンロードできません。

これを解決するには

closedXML

Visual Studioのツールからオプションを選択

closedXML

NuGetパッケージマネージャーの全般にある『パッケージ管理』を『PackageReference』に変更してOKをクリック。

closedXML

パッケージ管理を変更するだけでClosedXMLがインストール出来るようになります。

あとはいままで通りにClosedXMLを使ってExcelの操作が可能です。

 

ClosedXMLで保存したExcelファイルがめちゃくちゃになって保存される時の対処法

ClosedXMLはインストール出来たけど、SaveAsで保存するとExcelが壊れる・・・

XlosedXMLでファイルを読み込んでからSaveASで保存すると

closedXML

なぜかExcelファイルが壊れます。

原因としては、参照元のフォルダが違うと上記画像のような現象になるみたいです。

  • 例:参照元(sample1¥test.xlsx)保存先(desktop¥test.xlsx)⇐これだとダメ
  • 例:参照元(desktop¥test.xlsx)保存先(desktop¥test1.xlsx)⇐これだとOK

詳しい原因はよくわかりませんが、同一フォルダに置くと正常に機能しました。

 

しかし、これでもまだExcelファイルの破損が抑えられただけで内部のデータはめちゃくちゃになります。

⇧のようなファイルが

⇩のように順番とか配置が変わる

これの原因としては

closedXML

空白のセルの中に何がデータが入ってる場合に起こります。

表示上では見えませんが、何かデータがあるっぽいので空白行は一回Deleteします。

 

空白行を一回キレイにしてから保存すると

保存した後のExcelファイルに起こったバグが消えます。

最後にSaveASで出力したファイルを参照元にして新しいExcelファイルを作ると正常に動くようになりました。

 

まとめ

Excelの出力に関してはまだまだ不明点が多く、なぜ今回のようなめんどうな作業が必要なのか分かりません。

しかし、機能自体はちゃんと動作するようになったので、応急処置としては使えると思います。

ClosedXMLのインストール、保存時のエラーで悩まされてる人はお試しください。

    店舗改装、リフォームのお問い合わせは下記申し込みフォームから☆彡

    • この記事を書いた人
    • 最新記事

    井川 裕輝

    元倉庫業からEC総合責任者へ昇進。副業でもやってたEC事業で独立。その後Lステップと言うツールに出会い、岡山県でLステップ構築代行者として活動を始める。

    -C#, 自分の時間を作るプログラミング技術