読者です 読者をやめる 読者になる 読者になる

亀岡的プログラマ日記

京都のベッドタウン、亀岡よりだらだらとお送りいたします。

エクセルのバイナリフォーマットを解析してごにょごにょするライブラリ。

.NET C#

最近CodeProjectネタが多いな。。。まぁまじめに読んでるとかなり面白いですよ、CodeProject。
そんなわけで記事紹介です。

中身を見ると、真面目にバイナリフォーマットを解析してるっぽいですね。すばらすぃ。あんまり見て勉強になるとかそういうコードでもなさそうですけれどねw勉強には良いのかも。

とりあえずさくっとこんな感じで使えます。

//Excel writer object
ExcelDocument document = new ExcelDocument();

//Set cell size
document.ColumnWidth(0, 1000);
document.ColumnWidth(1, 100);

//Write value in designated cell.
document[0, 0].Value = "エクセル書き込みテスト"; //Japanese OK??
//Set font
document[0, 0].Font = new System.Drawing.Font("Times New Roman", 50, System.Drawing.FontStyle.Bold);
//Set forecolor
document[0, 0].ForeColor = ExcelColor.DarkRed;
//Set alignment
document[0, 0].Alignment = Alignment.Centered;
//Set Backcolor
document[0, 0].BackColor = ExcelColor.Silver;

//write value using WriteCell function
document.WriteCell(1, 0, "int");
document.WriteCell(1, 1, 10);
//We can access cell using Document.Cell(column,row) Function
document.Cell(2, 0).Value = "double";
document.Cell(2, 1).Value = 1.5;
//We can use format strings
document.Cell(3, 0).Value = "date";
document.Cell(3, 1).Value = DateTime.Now;
document.Cell(3, 1).Format = @"dd/mm/yyyy";

//Open file stream
FileStream stream = new FileStream("demo.xls", FileMode.Create);
//write to file stream
document.Save(stream);
stream.Close();

何が嬉しいかって、MonoDevelopでも普通に使えたこと。こっちの環境だとそうおいそれとExcelのCOM呼び出しできませんからねー。
ちなみにコメントが英語なのは英語強化期間中だから、ではなくなぜかMonoDevelopが日本語受け付けなくなたから(´・ω・`)