3
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

C#Excelファイルを作成する

Last updated at Posted at 2018-08-17

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);

コードのデバッグが実行されると、生成されたドキュメントは以下のようになります。
1.jpg

3
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?