【VB.NET】ClosedXML:FAQ

MEMO
  • この記事は GitHub - ClosedXML - Wiki を参考に書かせていただいたものですが、C# から VB.NET への書き換えをし、英語から日本語へ翻訳しただけでなく、元記事の構成・コード・コメント等を変更している場合もありますのでご了承ください。
  • 現在 ClosedXML のメンテナンスをご担当されている Francois Botha 様からの掲載許可もいただいてます。
  • この記事のコードサンプルについては、Imports ClosedXML.Excel が宣言されていることを前提としています。
  • ClosedXML の作成者について:Francois Botha, Aleksei Pankratev, Manuel de Leon, Amir Ghezelbash
  • ClosedXML のライセンスについて:GitHub - ClosedXML - MIT License

Excel 2003 とそれ以前のフォーマットもサポートしてますか?

いいえ。ClosedXML がサポートしているのは Excel 2007/2010/2013 のフォーマット (.xlsx) のみです。

補足 by エレン・イースト

.xlsx であるならばとりあえず 2013 以降もサポートされていると考えられます。

また、.xlsm も大丈夫なようです。

数字付きのテキストが数字に変換されてしまう

セルの .Value プロパティをセットすると、ClosedXML はオブジェクトの .ToString メソッドを呼んで、値を数字、日付、ブール、タイムスタンプ、またはテキストとして解釈します。
数字をテキストとして挿入するには、次の方法があります。

  • アポストロフィを付ける:cell.Value = "'123"
  • SetValue を使う:cell.SetValue("123") 'SetValue は自動的な型変換をしません
  • 数字として挿入してからセルのデータ型をテキストに変更する:cell.SetValue(123).SetDataType(XLCellValues.Text)
  • 値を挿入する前にセルのフォーマットを "@" に設定する:
      cell.Style.NumberFormat.Format = "@"
      cell.Value = "123"

詳細は「データ型」を参照してください。

画像はどのようにして挿入しますか?

  1. IXLWorksheet.AddPicture - ワークシートに画像を追加します
  2. IXLPicture.MoveTo - 指定の位置に画像を移動します

画像の挿入は ClosedXML v0.88 から導入された機能です。

ASP.NET で Excel ファイルを配布するには

ASP.NET Web フォーム

 

「【VB.NET】ClosedXML の使い方」の一覧を表示

コメントの投稿

avatar
  購読する  
通知を受け取る対象