Spire.XLS for .NETは、ASP.NETやWindows Formsなどの関連する.NETアプリケーションを含む、さまざまな.NETフレームワークで使用できるプロフェッショナルな.NET Excelコンポーネントです。
このチュートリアルでは、Spire.XLSを使用してExcelワークブックを作成し、データを書き込む方法を示します。
使用する必要のあるツール:Spire.XLS for .NET 。
【C#】
Program.cs
//ブックインスタンスを作成する
Workbook wb = new Workbook();
//既定のワークシートをクリアする
wb.Worksheets.Clear();
//ワークシートを追加してテーブル名を指定する
Worksheet sheet = wb.Worksheets.Add("学生のトランスクリプト");
//A1からJ1までのセルを水平にマージする
sheet.Range["A1:J1"].Merge();
//データをセルA1に書き込み、テキストフォーマットと配置を設定する
sheet.Range["A1"].Value = "学生のトランスクリプト";
sheet.Range["A1"].HorizontalAlignment = HorizontalAlignType.Center;
sheet.Range["A1"].VerticalAlignment = VerticalAlignType.Center;
sheet.Range["A1"].Style.Font.IsBold = true;
sheet.Range["A1"].Style.Font.Size = 13F;
//最初の行の高さを設定する
sheet.Rows[0].RowHeight = 30F;
//データテーブルを作成する
DataTable dt = new DataTable();
dt.Columns.Add("学生番号");
dt.Columns.Add("名前");
dt.Columns.Add("高度な数学");
dt.Columns.Add("離散数学");
dt.Columns.Add("英語");
dt.Columns.Add("アセンブリ言語");
dt.Columns.Add("C言語");
dt.Columns.Add("合計得点");
dt.Columns.Add("平均スコア");
dt.Columns.Add("ランキング");
dt.Rows.Add("001", "あらかき", "88", "98", "82", "85", "89", "442", "88", "6");
dt.Rows.Add("002", "はしもと", "100", "98", "100", "97", "100", "495", "99", "10");
dt.Rows.Add("003", "はにゅう", "97", "94", "89", "90", "90", "460", "92", "9");
dt.Rows.Add("004", "ほしの", "86", "76", "98", "96", "80", "436", "87", "5");
dt.Rows.Add("005", "うえの", "85", "68", "79", "74", "81", "387", "77", "3");
dt.Rows.Add("006", "ながい", "95", "89", "93", "87", "86", "450", "90", "7");
dt.Rows.Add("007", "つきのつ", "87", "75", "78", "96", "68", "404", "81", "4");
dt.Rows.Add("008", "ちねん", "94", "84", "98", "89", "94", "459", "92", "8");
dt.Rows.Add("009", "ゆあさ", "78", "77", "69", "80", "78", "382", "76", "1");
dt.Rows.Add("010", "なつめ", "80", "69", "76", "79", "80", "384", "77", "2");
//ワークシートにDataTableデータを書き込む
sheet.InsertDataTable(dt, true, 2, 1, true);
//セル行の高さと列の幅を設定する
sheet.Range["A2:J12"].RowHeight = 15F;
sheet.Range["A2:J12"].ColumnWidth = 15F;
//グリッド線のスタイルと色を設定する
sheet.Range["A2:J12"].BorderAround(LineStyleType.Medium);
sheet.Range["A2:J12"].BorderInside(LineStyleType.Thin);
sheet.Range["A2:J12"].BorderAround(LineStyleType.Medium);
sheet.Range["A2:J12"].Borders.KnownColor = ExcelColors.Black;
sheet.Range["A2:J12"].Style.HorizontalAlignment = HorizontalAlignType.Center;
sheet.Range["A1:J1"].Style.Color = Color.LightBlue;
sheet.Range["A2:J2"].Style.Color = Color.LightSeaGreen;
//スタイルを作成し、oddStyleという名前を付けます
CellStyle oddStyle = sheet.Workbook.Styles.Add("oddStyle");
oddStyle.Borders[BordersLineType.EdgeLeft].LineStyle = LineStyleType.Thin;
oddStyle.Borders[BordersLineType.EdgeRight].LineStyle = LineStyleType.Thin;
oddStyle.Borders[BordersLineType.EdgeTop].LineStyle = LineStyleType.Thin;
oddStyle.Borders[BordersLineType.EdgeBottom].LineStyle = LineStyleType.Thin;
oddStyle.KnownColor = ExcelColors.LightGreen1;
//スタイルを作成し、それに "evenStyle"という名前を付けます
CellStyle evenStyle = sheet.Workbook.Styles.Add("evenStyle");
evenStyle.Borders[BordersLineType.EdgeLeft].LineStyle = LineStyleType.Thin;
evenStyle.Borders[BordersLineType.EdgeRight].LineStyle = LineStyleType.Thin;
evenStyle.Borders[BordersLineType.EdgeTop].LineStyle = LineStyleType.Thin;
evenStyle.Borders[BordersLineType.EdgeBottom].LineStyle = LineStyleType.Thin;
evenStyle.KnownColor = ExcelColors.LightTurquoise;
//セルをA3からJ12にフォーマットし、奇数ラインの場合はoddStyleを使用し、偶数ラインの場合はevenStyleを使用します
foreach (CellRange range in sheet.Range["A3:J12"].Rows)
{
if (range.Row % 2 == 0)
range.CellStyleName = evenStyle.Name;
else
range.CellStyleName = oddStyle.Name;
}
//.xlsxファイルとして保存
wb.SaveToFile("Excelを作成する.xlsx", FileFormat.Version2013);