C# で Excel ファイルを作成する
C# プログラミング言語を使用して、Excel スプレッドシートを生成する方法を学習します。
C#
でExcelファイルを作成
次に進む前に、デバイスに .NET Framework
の Microsoft Excel 16.0 Object Library
コンポーネントがあるかどうかを確認してください。これにより、インストールが成功したことが確認されます。 ある場合は、続行できます。
このプロジェクトには Microsoft Visual Studio を使用します。
参照を追加
Excel ファイルを作成するには、Microsoft Excel 16.0 Object Library
を参照として追加する必要があります。 その方法を知りたい場合は、以下の手順に従ってください。
-
Microsoft Visual Studio
を起動し、新しい C# プロジェクトを作成します。 -
Solution Explorer
でReferences
オプションを右クリックし、メニューバーからAdd Reference
をクリックします。 -
新しい小さなウィンドウが表示されます。 左側のパネルから
COM
を選択し、リストからMicrosoft Excel 16.0 Object Library
を見つけて、"OK"
をクリックします。
ファイルを作成する
次の例は、COM interop
を使用して Excel ファイルを生成する方法を示しています。
-
まず、次のライブラリをインポートします。
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks;
-
interop
サービスにアクセスする前に、Excel アプリケーション オブジェクトを初期化します。using Microsoft.Office.Interop.Excel; using _excel = Microsoft.Office.Interop.Excel;
-
excelapp
という Excel アプリケーションを作成し、Workbook
とWorksheet
のオブジェクトを初期化します。これらをそれぞれwb
とws
と呼びます。_Application excelapp = new _excel.Application(); Workbook wb; Worksheet ws;
-
CreateFile()
というメソッドを作成します。 メソッドが実行されると、ワークシートを 1つだけ含む新しい Excel ワークブックが作成され、新しい Excel ドキュメントが作成されます。public void CreateFile() { this.wb = excelapp.Workbooks.Add(XlWBATemplate.xlWBATWorksheet); this.ws = this.wb.Worksheets[1]; }
-
同様に、開いている現在のワークブックに空白のワークシートを追加する
CreateSheet()
というメソッドを作成します。public void CreateSheet() { Worksheet worksheet1 = excelapp.Worksheets.Add(After: this.ws); }
-
ワークブックをユーザーが指定したパスに保存するメソッドを作成します。
public void SaveAs(string filepath) { wb.SaveAs(filepath); }
-
Main()
メソッド内で、Excelfile
という名前のExcel
クラスのオブジェクトを初期化します。Excel Excelfile = new Excel();
-
CreateFile()
関数を使用して、1つのシートだけで新しいワークブックを開始します。Excelfile.CreateFile();
-
CreateSheet()
関数を使用してワークブックに新しいシートを追加します。Excelfile.CreateSheet();
-
SaveAs()
関数を使用して、指定したパスにファイルを保存します。Excelfile.SaveAs(@"D:myarticle/ExcelfilebyZeeshan.xlsx"); Excelfile.wb.Close();
完全なソース コード:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Microsoft.Office.Interop.Excel;
using _excel = Microsoft.Office.Interop.Excel;
namespace CreateExcelcsharpZeeshan {
class Excel {
_Application excelapp = new _excel.Application();
Workbook wb;
Worksheet ws;
public void CreateFile() {
this.wb = excelapp.Workbooks.Add(XlWBATemplate.xlWBATWorksheet);
this.ws = this.wb.Worksheets[1];
}
public void CreateSheet() {
Worksheet worksheet1 = excelapp.Worksheets.Add(After: this.ws);
}
public void SaveAs(string filepath) {
wb.SaveAs(filepath);
}
public static void Main(string[] args) {
Excel Excelfile = new Excel();
Excelfile.CreateFile();
Excelfile.CreateSheet();
Excelfile.SaveAs(@"D:myarticle/ExcelfilebyZeeshan.xlsx");
Excelfile.wb.Close();
}
}
}
出力:
I have been working as a Flutter app developer for a year now. Firebase and SQLite have been crucial in the development of my android apps. I have experience with C#, Windows Form Based C#, C, Java, PHP on WampServer, and HTML/CSS on MYSQL, and I have authored articles on their theory and issue solving. I'm a senior in an undergraduate program for a bachelor's degree in Information Technology.
LinkedIn